cs-models 0.0.698__py3-none-any.whl → 0.0.700__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.

Potentially problematic release.


This version of cs-models might be problematic. Click here for more details.

File without changes
@@ -0,0 +1,38 @@
1
+ from datetime import datetime
2
+
3
+ from sqlalchemy import (
4
+ Column,
5
+ Integer,
6
+ DateTime,
7
+ String,
8
+ DECIMAL,
9
+ Float,
10
+ )
11
+
12
+ from ...database import Base
13
+
14
+
15
+ class SalesEstimateModel(Base):
16
+ __tablename__ = "sales_estimates"
17
+
18
+ id = Column(Integer, primary_key=True)
19
+ fiscal_year = Column(Integer, nullable=True)
20
+ request_id = Column(String(20), nullable=True)
21
+ metric = Column(String(50), nullable=True)
22
+ drug_name = Column(String(128), nullable=False, index=True),
23
+ currency = Column(String(20), nullable=True)
24
+ fiscal_end_date = Column(DateTime, nullable=True)
25
+ estimate_date = Column(DateTime, nullable=True)
26
+ estimate_count = Column(Integer, nullable=True)
27
+ mean = Column(DECIMAL(13, 2), nullable=True)
28
+ median = Column(DECIMAL(13, 2), nullable=True)
29
+ sd = Column(Float, nullable=True)
30
+ high = Column(DECIMAL(13, 2), nullable=True)
31
+ low = Column(DECIMAL(13, 2), nullable=True)
32
+ updated_at = Column(
33
+ DateTime,
34
+ nullable=False,
35
+ # https://stackoverflow.com/questions/58776476/why-doesnt-freezegun-work-with-sqlalchemy-default-values
36
+ default=lambda: datetime.utcnow(),
37
+ onupdate=lambda: datetime.utcnow(),
38
+ )
@@ -0,0 +1,25 @@
1
+ from marshmallow import (
2
+ Schema,
3
+ fields,
4
+ validate,
5
+ )
6
+
7
+
8
+ class SalesEstimateResourceSchema(Schema):
9
+ not_blank = validate.Length(min=1, error='Field cannot be blank')
10
+
11
+ id = fields.Integer(dump_only=True)
12
+ fiscal_year = fields.Integer(allow_none=True)
13
+ request_id = fields.String(allow_none=True)
14
+ metric = fields.String(allow_none=True)
15
+ drug_name = fields.String(required=True)
16
+ currency = fields.String(allow_none=True)
17
+ fiscal_end_date = fields.DateTime(allow_none=True)
18
+ estimate_date = fields.DateTime(allow_none=True)
19
+ estimate_count = fields.Integer(allow_none=True)
20
+ mean = fields.Decimal(allow_none=True)
21
+ median = fields.Decimal(allow_none=True)
22
+ sd = fields.Float(allow_none=True)
23
+ high = fields.Decimal(allow_none=True)
24
+ low = fields.Decimal(allow_none=True)
25
+ updated_at = fields.DateTime()
File without changes
@@ -0,0 +1,38 @@
1
+ from sqlalchemy import (
2
+ Column,
3
+ Integer,
4
+ DateTime,
5
+ ForeignKey,
6
+ )
7
+ from datetime import datetime
8
+
9
+ from ...database import Base
10
+
11
+
12
+ class SalesEstimateCompanyModel(Base):
13
+ __tablename__ = 'sales_estimate_companies'
14
+
15
+ id = Column(Integer, primary_key=True)
16
+ company_sec_id = Column(
17
+ Integer,
18
+ ForeignKey('companies_sec.id'),
19
+ nullable=True,
20
+ )
21
+ company_ous_id = Column(
22
+ Integer,
23
+ ForeignKey('companies_ous.id'),
24
+ nullable=True,
25
+ )
26
+ sales_estimate_id = Column(
27
+ Integer,
28
+ ForeignKey('sales_estimates.id'),
29
+ nullable=False,
30
+ )
31
+ date = Column(DateTime, nullable=True)
32
+ updated_at = Column(
33
+ DateTime,
34
+ nullable=False,
35
+ # https://stackoverflow.com/questions/58776476/why-doesnt-freezegun-work-with-sqlalchemy-default-values
36
+ default=lambda: datetime.utcnow(),
37
+ onupdate=lambda: datetime.utcnow(),
38
+ )
@@ -0,0 +1,35 @@
1
+ from marshmallow import (
2
+ Schema,
3
+ fields,
4
+ validate,
5
+ pre_load,
6
+ ValidationError,
7
+ )
8
+
9
+
10
+ class SalesEstimateCompanyResourceSchema(Schema):
11
+ not_blank = validate.Length(min=1, error='Field cannot be blank')
12
+
13
+ id = fields.Integer(dump_only=True)
14
+ sales_estimate_id = fields.Integer(required=True)
15
+ company_sec_id = fields.Integer(allow_none=True)
16
+ company_ous_id = fields.Integer(allow_none=True)
17
+ date = fields.DateTime(allow_none=True)
18
+ updated_at = fields.DateTime(dump_only=True)
19
+
20
+ @pre_load
21
+ def check_company_ids(self, in_data, **kwargs):
22
+ if self._get_number_of_company_fields(in_data) > 1:
23
+ raise ValidationError('Provide either company_sec_id or '
24
+ 'company_ous_id, not both')
25
+ return in_data
26
+
27
+ def _get_number_of_company_fields(self, in_data, **kwargs):
28
+ result = 0
29
+ if 'company_sec_id' in in_data:
30
+ if in_data['company_sec_id'] is not None:
31
+ result += 1
32
+ if 'company_ous_id' in in_data:
33
+ if in_data['company_ous_id'] is not None:
34
+ result += 1
35
+ return result
File without changes
@@ -0,0 +1,41 @@
1
+ from datetime import datetime
2
+
3
+ from sqlalchemy import (
4
+ Column,
5
+ Integer,
6
+ DateTime,
7
+ ForeignKey,
8
+ Float,
9
+ Boolean,
10
+ )
11
+
12
+ from ...database import Base
13
+
14
+
15
+ class SalesEstimateConditionModel(Base):
16
+ __tablename__ = "sales_estimate_conditions"
17
+
18
+ id = Column(Integer, primary_key=True)
19
+ sales_estimate_id = Column(
20
+ Integer,
21
+ ForeignKey('sales_estimates.id'),
22
+ nullable=False,
23
+ )
24
+ condition_id = Column(
25
+ Integer,
26
+ ForeignKey('conditions.id'),
27
+ nullable=False,
28
+ )
29
+ score = Column(
30
+ Float,
31
+ nullable=False,
32
+ )
33
+ preferred = Column(Boolean, nullable=True)
34
+ date = Column(DateTime, nullable=True)
35
+ updated_at = Column(
36
+ DateTime,
37
+ nullable=False,
38
+ # https://stackoverflow.com/questions/58776476/why-doesnt-freezegun-work-with-sqlalchemy-default-values
39
+ default=lambda: datetime.utcnow(),
40
+ onupdate=lambda: datetime.utcnow(),
41
+ )
@@ -0,0 +1,17 @@
1
+ from marshmallow import (
2
+ Schema,
3
+ fields,
4
+ validate,
5
+ )
6
+
7
+
8
+ class SalesEstimateConditionResourceSchema(Schema):
9
+ not_blank = validate.Length(min=1, error='Field cannot be blank')
10
+
11
+ id = fields.Integer(dump_only=True)
12
+ sales_estimate_id = fields.Integer(required=True)
13
+ condition_id = fields.Integer(required=True)
14
+ score = fields.Float(required=True)
15
+ preferred = fields.Boolean(allow_none=True)
16
+ date = fields.DateTime(allow_none=True)
17
+ updated_at = fields.DateTime()
@@ -0,0 +1,41 @@
1
+ from datetime import datetime
2
+
3
+ from sqlalchemy import (
4
+ Column,
5
+ Integer,
6
+ DateTime,
7
+ ForeignKey,
8
+ Boolean,
9
+ Float,
10
+ )
11
+
12
+ from ...database import Base
13
+
14
+
15
+ class SalesEstimateInterventionModel(Base):
16
+ __tablename__ = "sales_estimate_interventions"
17
+
18
+ id = Column(Integer, primary_key=True)
19
+ sales_estimate_id = Column(
20
+ Integer,
21
+ ForeignKey('sales_estimates.id'),
22
+ nullable=False,
23
+ )
24
+ intervention_id = Column(
25
+ Integer,
26
+ ForeignKey('interventions.id'),
27
+ nullable=False,
28
+ )
29
+ score = Column(
30
+ Float,
31
+ nullable=False,
32
+ )
33
+ preferred = Column(Boolean, nullable=True)
34
+ date = Column(DateTime, nullable=True)
35
+ updated_at = Column(
36
+ DateTime,
37
+ nullable=False,
38
+ # https://stackoverflow.com/questions/58776476/why-doesnt-freezegun-work-with-sqlalchemy-default-values
39
+ default=lambda: datetime.utcnow(),
40
+ onupdate=lambda: datetime.utcnow(),
41
+ )
@@ -0,0 +1,17 @@
1
+ from marshmallow import (
2
+ Schema,
3
+ fields,
4
+ validate,
5
+ )
6
+
7
+
8
+ class SalesEstimateInterventionResourceSchema(Schema):
9
+ not_blank = validate.Length(min=1, error='Field cannot be blank')
10
+
11
+ id = fields.Integer(dump_only=True)
12
+ sales_estimate_id = fields.Integer(required=True)
13
+ intervention_id = fields.Integer(required=True)
14
+ score = fields.Float(required=True)
15
+ preferred = fields.Boolean(allow_none=True)
16
+ date = fields.DateTime(allow_none=True)
17
+ updated_at = fields.DateTime()
File without changes
@@ -0,0 +1,41 @@
1
+ from datetime import datetime
2
+
3
+ from sqlalchemy import (
4
+ Column,
5
+ Integer,
6
+ DateTime,
7
+ ForeignKey,
8
+ Float,
9
+ Boolean,
10
+ )
11
+
12
+ from ...database import Base
13
+
14
+
15
+ class SalesEstimateTargetModel(Base):
16
+ __tablename__ = "sales_estimate_targets"
17
+
18
+ id = Column(Integer, primary_key=True)
19
+ sales_estimate_id = Column(
20
+ Integer,
21
+ ForeignKey('sales_estimates.id'),
22
+ nullable=False,
23
+ )
24
+ target_id = Column(
25
+ Integer,
26
+ ForeignKey('targets.id'),
27
+ nullable=False,
28
+ )
29
+ score = Column(
30
+ Float,
31
+ nullable=False,
32
+ )
33
+ preferred = Column(Boolean, nullable=True)
34
+ date = Column(DateTime, nullable=True)
35
+ updated_at = Column(
36
+ DateTime,
37
+ nullable=False,
38
+ # https://stackoverflow.com/questions/58776476/why-doesnt-freezegun-work-with-sqlalchemy-default-values
39
+ default=lambda: datetime.utcnow(),
40
+ onupdate=lambda: datetime.utcnow(),
41
+ )
@@ -0,0 +1,17 @@
1
+ from marshmallow import (
2
+ Schema,
3
+ fields,
4
+ validate,
5
+ )
6
+
7
+
8
+ class SalesEstimateTargetResourceSchema(Schema):
9
+ not_blank = validate.Length(min=1, error='Field cannot be blank')
10
+
11
+ id = fields.Integer(dump_only=True)
12
+ sales_estimate_id = fields.Integer(required=True)
13
+ target_id = fields.Integer(required=True)
14
+ score = fields.Float(required=True)
15
+ preferred = fields.Boolean(allow_none=True)
16
+ date = fields.DateTime(allow_none=True)
17
+ updated_at = fields.DateTime()
@@ -21,6 +21,7 @@ class TranscriptModel(Base):
21
21
  event_type = Column(String(50), nullable=True)
22
22
  event_tags = Column(Text, nullable=True)
23
23
  human_verified = Column(Boolean, nullable=True)
24
+ transcription_status = Column(String(50), nullable=True)
24
25
  audio_url = Column(String(191), nullable=True)
25
26
  updated_at = Column(
26
27
  DateTime,
@@ -16,4 +16,5 @@ class TranscriptResourceSchema(Schema):
16
16
  event_tags = fields.String(allow_none=True)
17
17
  human_verified = fields.Boolean(allow_none=True)
18
18
  audio_url = fields.String(allow_none=True)
19
+ transcription_status = fields.String(allow_none=True)
19
20
  updated_at = fields.DateTime()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cs-models
3
- Version: 0.0.698
3
+ Version: 0.0.700
4
4
  Summary: MySQL db models
5
5
  Home-page: https://github.com/mindgram/cs-models
6
6
  Author: Shrey Verma
@@ -860,6 +860,21 @@ cs_models/resources/SRCIdCondition/schemas.py,sha256=w_cvdCMZSI17PLftw4tST_9r1yT
860
860
  cs_models/resources/Sales/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
861
861
  cs_models/resources/Sales/models.py,sha256=gJeTtpVVKo3OKb5fYRuxdLorPrXV7RJh4b0-YFIywDg,954
862
862
  cs_models/resources/Sales/schemas.py,sha256=GTA2CNBOxn65mUornpk2eGM4exkPm7W7zO1ZJ4yiLW8,559
863
+ cs_models/resources/SalesEstimate/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
864
+ cs_models/resources/SalesEstimate/models.py,sha256=YNK2BSheuAiQ6RI4wnfv5IXHc9p4WRbi5scY9xqgvjA,1205
865
+ cs_models/resources/SalesEstimate/schemas.py,sha256=OntDcEUI64wyZGAIB5_dir9oS5-5taMohRnbmO4_CS4,863
866
+ cs_models/resources/SalesEstimateCompany/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
867
+ cs_models/resources/SalesEstimateCompany/models.py,sha256=wnbMVuQKVv08B-_VOgGtqHgToTbmfTCjdUxPW0Nkcuo,940
868
+ cs_models/resources/SalesEstimateCompany/schemas.py,sha256=EOPE_FWKffdM2i_l-PzhD4wEo9pV7PQZtz9EVehNIBw,1149
869
+ cs_models/resources/SalesEstimateCondition/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
870
+ cs_models/resources/SalesEstimateCondition/models.py,sha256=ItKOmBwVe_MyTIUyHFrDdXFV0Vz-FNyevATMdn25AXM,961
871
+ cs_models/resources/SalesEstimateCondition/schemas.py,sha256=GnF9hThDzpExhFf86V9-cLxzT4pNSgSSvKKs0IFqLbs,501
872
+ cs_models/resources/SalesEstimateIntervention/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
873
+ cs_models/resources/SalesEstimateIntervention/models.py,sha256=4oAbpjc5D27WZaVT4D5BfB3hnc_DQg3VEL8o8ld6bXI,973
874
+ cs_models/resources/SalesEstimateIntervention/schemas.py,sha256=RQXJiNwPRdWkuBp_0oK9RqpZMiKMMxrBcLuuEokhm08,507
875
+ cs_models/resources/SalesEstimateTarget/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
876
+ cs_models/resources/SalesEstimateTarget/models.py,sha256=1VKRqnIbN1ldk-UGw4TxmhzRHC-qa4ArxpkYLnkRuYk,949
877
+ cs_models/resources/SalesEstimateTarget/schemas.py,sha256=94kjvgpavcEkvJ9RABMo9w7lRsUgrcWHs5I9-ewCq7A,495
863
878
  cs_models/resources/SalesProductsMap/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
864
879
  cs_models/resources/SalesProductsMap/models.py,sha256=kObHYA2q2wNY8QTqZd0mP5nSdFGoqnXRwlzOSSjvdK8,858
865
880
  cs_models/resources/SalesProductsMap/schemas.py,sha256=zocpRe3by4_wUKwy-Cp2I190-scyG9wbgjZs37Je728,401
@@ -911,8 +926,8 @@ cs_models/resources/TickerCompany/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeR
911
926
  cs_models/resources/TickerCompany/models.py,sha256=trbXLaiO0GPke7pzDxZ-cXSspmOaYi3EF0bendx6pjg,884
912
927
  cs_models/resources/TickerCompany/schemas.py,sha256=5PwrHDwYxDQyEdC5hLq8lD9bbYDFJMgLcPtAtu0-pwY,1152
913
928
  cs_models/resources/Transcript/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
914
- cs_models/resources/Transcript/models.py,sha256=TAu87b5NgFy9c9Gb3y7YZt5DaYbcMjNjjicLWL2WEt8,760
915
- cs_models/resources/Transcript/schemas.py,sha256=vKGpqYUSHxc5ZhtFhXUUBBBADA7A_Dc2NO9fA5vbOjU,578
929
+ cs_models/resources/Transcript/models.py,sha256=dZMz-JjbDiBHXfo0AN08qh8HXpQrYfiRuK6LHD1ykDs,821
930
+ cs_models/resources/Transcript/schemas.py,sha256=fxhdWjAydlk5iwBP7xpfEsHxGvd45BEOzClnLs3oxb0,636
916
931
  cs_models/resources/TranscriptCondition/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
917
932
  cs_models/resources/TranscriptCondition/models.py,sha256=WqFUWpIjqDRBkvyjW4D8QwN4bUePzSAFdAZ0nsH0nvY,946
918
933
  cs_models/resources/TranscriptCondition/schemas.py,sha256=096N5lJ1oSP1ziMraeaaXuTIhVTR3AY2jGmFei2K5XM,494
@@ -1147,7 +1162,7 @@ cs_models/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1147
1162
  cs_models/utils/alchemy.py,sha256=fhINGFn41owJ2DLXQKXAAtLqeZ1BRzD_qU0wPK_bsGQ,1598
1148
1163
  cs_models/utils/utils.py,sha256=bY623DuzycfPQiaOQT2AxfANeWfwr5w76dBuQ813-ns,3664
1149
1164
  cs_models/utils/profiling/__init__.py,sha256=N-73vb0M92C975fxgXyBCBjCPELl8Oh21ZY_-tzDnns,569
1150
- cs_models-0.0.698.dist-info/METADATA,sha256=L6cIBfEaGYgzAUiGR-xxQ9I7qGKx4G-Ux41I1fyWPWY,792
1151
- cs_models-0.0.698.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
1152
- cs_models-0.0.698.dist-info/top_level.txt,sha256=M7CA8Nh5t0vRManQ9gHfphhO16uhMqIbfaxr1jPDg18,10
1153
- cs_models-0.0.698.dist-info/RECORD,,
1165
+ cs_models-0.0.700.dist-info/METADATA,sha256=1Zg6DZRRsRuN9-dlNR7jWP6Tb5uAqbpVYQVghkUQrLc,792
1166
+ cs_models-0.0.700.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
1167
+ cs_models-0.0.700.dist-info/top_level.txt,sha256=M7CA8Nh5t0vRManQ9gHfphhO16uhMqIbfaxr1jPDg18,10
1168
+ cs_models-0.0.700.dist-info/RECORD,,