cs-models 0.0.612__py3-none-any.whl → 0.0.614__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.
- cs_models/resources/Patent/models.py +3 -0
- cs_models/resources/Patent/schemas.py +2 -0
- cs_models/resources/PatentApplication/models.py +3 -0
- cs_models/resources/PatentApplication/schemas.py +2 -0
- cs_models/resources/PurpleBookPatent/__init__.py +0 -0
- cs_models/resources/PurpleBookPatent/models.py +30 -0
- cs_models/resources/PurpleBookPatent/schemas.py +18 -0
- cs_models/resources/UserDocument/__init__.py +0 -0
- cs_models/resources/UserDocument/models.py +38 -0
- cs_models/resources/UserDocument/schemas.py +21 -0
- cs_models/resources/UserDocumentCompany/__init__.py +0 -0
- cs_models/resources/UserDocumentCompany/models.py +40 -0
- cs_models/resources/UserDocumentCompany/schemas.py +36 -0
- cs_models/resources/UserDocumentCondition/__init__.py +0 -0
- cs_models/resources/UserDocumentCondition/models.py +42 -0
- cs_models/resources/UserDocumentCondition/schemas.py +18 -0
- cs_models/resources/UserDocumentIntervention/__init__.py +0 -0
- cs_models/resources/UserDocumentIntervention/models.py +42 -0
- cs_models/resources/UserDocumentIntervention/schemas.py +18 -0
- cs_models/resources/UserDocumentTarget/__init__.py +0 -0
- cs_models/resources/UserDocumentTarget/models.py +42 -0
- cs_models/resources/UserDocumentTarget/schemas.py +18 -0
- cs_models/resources/UserOrganization/__init__.py +0 -0
- cs_models/resources/UserOrganization/models.py +26 -0
- cs_models/resources/UserOrganization/schemas.py +12 -0
- {cs_models-0.0.612.dist-info → cs_models-0.0.614.dist-info}/METADATA +1 -1
- {cs_models-0.0.612.dist-info → cs_models-0.0.614.dist-info}/RECORD +29 -8
- {cs_models-0.0.612.dist-info → cs_models-0.0.614.dist-info}/WHEEL +0 -0
- {cs_models-0.0.612.dist-info → cs_models-0.0.614.dist-info}/top_level.txt +0 -0
|
@@ -6,6 +6,7 @@ from sqlalchemy import (
|
|
|
6
6
|
DateTime,
|
|
7
7
|
UniqueConstraint,
|
|
8
8
|
ForeignKey,
|
|
9
|
+
Boolean,
|
|
9
10
|
)
|
|
10
11
|
from datetime import datetime
|
|
11
12
|
|
|
@@ -53,6 +54,8 @@ class PatentModel(Base):
|
|
|
53
54
|
espace_url = Column(String(500))
|
|
54
55
|
docdb_family_id = Column(Integer)
|
|
55
56
|
inpadoc_family_id = Column(Integer)
|
|
57
|
+
is_orange_book = Column(Boolean, nullable=True)
|
|
58
|
+
is_purple_book = Column(Boolean, nullable=True)
|
|
56
59
|
|
|
57
60
|
updated_at = Column(
|
|
58
61
|
DateTime,
|
|
@@ -45,6 +45,8 @@ class PatentResourceSchema(Schema):
|
|
|
45
45
|
espace_url = fields.String(allow_none=True)
|
|
46
46
|
docdb_family_id = fields.Integer(allow_none=True)
|
|
47
47
|
inpadoc_family_id = fields.Integer(allow_none=True)
|
|
48
|
+
is_orange_book = fields.Boolean(allow_none=True)
|
|
49
|
+
is_purple_book = fields.Boolean(allow_none=True)
|
|
48
50
|
|
|
49
51
|
updated_at = fields.DateTime()
|
|
50
52
|
|
|
@@ -4,6 +4,7 @@ from sqlalchemy import (
|
|
|
4
4
|
String,
|
|
5
5
|
Text,
|
|
6
6
|
DateTime,
|
|
7
|
+
Boolean,
|
|
7
8
|
UniqueConstraint,
|
|
8
9
|
)
|
|
9
10
|
from datetime import datetime
|
|
@@ -30,6 +31,8 @@ class PatentApplicationModel(Base):
|
|
|
30
31
|
title = Column(String(500))
|
|
31
32
|
docdb_family_id = Column(Integer, nullable=True)
|
|
32
33
|
inpadoc_family_id = Column(Integer, nullable=True)
|
|
34
|
+
is_orange_book = Column(Boolean, nullable=True)
|
|
35
|
+
is_purple_book = Column(Boolean, nullable=True)
|
|
33
36
|
|
|
34
37
|
updated_at = Column(
|
|
35
38
|
DateTime,
|
|
@@ -27,6 +27,8 @@ class PatentApplicationResourceSchema(Schema):
|
|
|
27
27
|
app_sub_class = fields.String(allow_none=True)
|
|
28
28
|
docdb_family_id = fields.Integer(allow_none=True)
|
|
29
29
|
inpadoc_family_id = fields.Integer(allow_none=True)
|
|
30
|
+
is_orange_book = fields.Boolean(allow_none=True)
|
|
31
|
+
is_purple_book = fields.Boolean(allow_none=True)
|
|
30
32
|
updated_at = fields.DateTime(dump_only=True)
|
|
31
33
|
|
|
32
34
|
@pre_load
|
|
File without changes
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
from datetime import datetime
|
|
2
|
+
|
|
3
|
+
from sqlalchemy import (
|
|
4
|
+
Column,
|
|
5
|
+
Integer,
|
|
6
|
+
DateTime,
|
|
7
|
+
String,
|
|
8
|
+
)
|
|
9
|
+
|
|
10
|
+
from ...database import Base
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class PurpleBookPatentModel(Base):
|
|
14
|
+
__tablename__ = "purple_book_patents"
|
|
15
|
+
|
|
16
|
+
id = Column(Integer, primary_key=True)
|
|
17
|
+
bla_number = Column(String(128), nullable=False, index=True)
|
|
18
|
+
applicant_name = Column(String(191), nullable=False, index=True)
|
|
19
|
+
proprietary_name = Column(String(191), nullable=False, index=True)
|
|
20
|
+
proper_name = Column(String(191), nullable=False, index=True)
|
|
21
|
+
patent_number = Column(String(128), nullable=False, index=True)
|
|
22
|
+
expiration_date = Column(DateTime, nullable=True)
|
|
23
|
+
updated_at = Column(
|
|
24
|
+
DateTime,
|
|
25
|
+
nullable=False,
|
|
26
|
+
index=True,
|
|
27
|
+
# https://stackoverflow.com/questions/58776476/why-doesnt-freezegun-work-with-sqlalchemy-default-values
|
|
28
|
+
default=lambda: datetime.utcnow(),
|
|
29
|
+
onupdate=lambda: datetime.utcnow(),
|
|
30
|
+
)
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
from marshmallow import (
|
|
2
|
+
Schema,
|
|
3
|
+
fields,
|
|
4
|
+
validate,
|
|
5
|
+
)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class PurpleBookPatentResourceSchema(Schema):
|
|
9
|
+
not_blank = validate.Length(min=1, error='Field cannot be blank')
|
|
10
|
+
|
|
11
|
+
id = fields.Integer(dump_only=True)
|
|
12
|
+
bla_number = fields.String(required=True)
|
|
13
|
+
applicant_name = fields.String(required=True)
|
|
14
|
+
proprietary_name = fields.String(required=True)
|
|
15
|
+
proper_name = fields.String(required=True)
|
|
16
|
+
patent_number = fields.String(required=True)
|
|
17
|
+
expiration_date = fields.DateTime(allow_none=True)
|
|
18
|
+
updated_at = fields.DateTime(dump_only=True)
|
|
File without changes
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
from sqlalchemy import (
|
|
2
|
+
Column,
|
|
3
|
+
Integer,
|
|
4
|
+
String,
|
|
5
|
+
DateTime,
|
|
6
|
+
ForeignKey,
|
|
7
|
+
Boolean,
|
|
8
|
+
Float,
|
|
9
|
+
)
|
|
10
|
+
from datetime import datetime
|
|
11
|
+
|
|
12
|
+
from ...database import Base
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class UserDocumentModel(Base):
|
|
16
|
+
__tablename__ = 'user_documents'
|
|
17
|
+
|
|
18
|
+
id = Column(Integer, primary_key=True)
|
|
19
|
+
user_id = Column(String(128), nullable=False, index=True)
|
|
20
|
+
file_id = Column(
|
|
21
|
+
Integer,
|
|
22
|
+
ForeignKey('files.id'),
|
|
23
|
+
nullable=False,
|
|
24
|
+
)
|
|
25
|
+
date = Column(DateTime, nullable=True)
|
|
26
|
+
title = Column(String(255), nullable=True)
|
|
27
|
+
type = Column(String(255), nullable=True)
|
|
28
|
+
type_score = Column(Float, nullable=True)
|
|
29
|
+
is_deleted = Column(Boolean, nullable=True)
|
|
30
|
+
upload_date = Column(DateTime, nullable=False)
|
|
31
|
+
category = Column(String(128), 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,21 @@
|
|
|
1
|
+
from marshmallow import (
|
|
2
|
+
Schema,
|
|
3
|
+
fields,
|
|
4
|
+
validate,
|
|
5
|
+
)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class UserDocumentResourceSchema(Schema):
|
|
9
|
+
not_blank = validate.Length(min=1, error='Field cannot be blank')
|
|
10
|
+
|
|
11
|
+
id = fields.Integer(dump_only=True)
|
|
12
|
+
user_id = fields.String(required=True)
|
|
13
|
+
file_id = fields.Integer(required=True)
|
|
14
|
+
date = fields.DateTime(allow_none=True)
|
|
15
|
+
title = fields.String(allow_none=True)
|
|
16
|
+
type = fields.String(allow_none=True)
|
|
17
|
+
type_score = fields.Float(allow_none=True)
|
|
18
|
+
is_deleted = fields.Boolean(allow_none=True)
|
|
19
|
+
upload_date = fields.DateTime(required=True)
|
|
20
|
+
category = fields.String(allow_none=True)
|
|
21
|
+
updated_at = fields.DateTime(dump_only=True)
|
|
File without changes
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
from sqlalchemy import (
|
|
2
|
+
Column,
|
|
3
|
+
Integer,
|
|
4
|
+
DateTime,
|
|
5
|
+
String,
|
|
6
|
+
ForeignKey,
|
|
7
|
+
)
|
|
8
|
+
from datetime import datetime
|
|
9
|
+
|
|
10
|
+
from ...database import Base
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class UserDocumentCompanyModel(Base):
|
|
14
|
+
__tablename__ = 'user_document_companies'
|
|
15
|
+
|
|
16
|
+
id = Column(Integer, primary_key=True)
|
|
17
|
+
company_sec_id = Column(
|
|
18
|
+
Integer,
|
|
19
|
+
ForeignKey('companies_sec.id'),
|
|
20
|
+
nullable=True,
|
|
21
|
+
)
|
|
22
|
+
company_ous_id = Column(
|
|
23
|
+
Integer,
|
|
24
|
+
ForeignKey('companies_ous.id'),
|
|
25
|
+
nullable=True,
|
|
26
|
+
)
|
|
27
|
+
user_document_id = Column(
|
|
28
|
+
Integer,
|
|
29
|
+
ForeignKey('user_documents.id'),
|
|
30
|
+
nullable=False,
|
|
31
|
+
)
|
|
32
|
+
date = Column(DateTime, nullable=True)
|
|
33
|
+
source = Column(String(50), nullable=True)
|
|
34
|
+
updated_at = Column(
|
|
35
|
+
DateTime,
|
|
36
|
+
nullable=False,
|
|
37
|
+
# https://stackoverflow.com/questions/58776476/why-doesnt-freezegun-work-with-sqlalchemy-default-values
|
|
38
|
+
default=lambda: datetime.utcnow(),
|
|
39
|
+
onupdate=lambda: datetime.utcnow(),
|
|
40
|
+
)
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
from marshmallow import (
|
|
2
|
+
Schema,
|
|
3
|
+
fields,
|
|
4
|
+
validate,
|
|
5
|
+
pre_load,
|
|
6
|
+
ValidationError,
|
|
7
|
+
)
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class UserDocumentCompanyResourceSchema(Schema):
|
|
11
|
+
not_blank = validate.Length(min=1, error='Field cannot be blank')
|
|
12
|
+
|
|
13
|
+
id = fields.Integer(dump_only=True)
|
|
14
|
+
user_document_id = fields.Integer(required=True)
|
|
15
|
+
company_sec_id = fields.Integer(allow_none=True)
|
|
16
|
+
company_ous_id = fields.Integer(allow_none=True)
|
|
17
|
+
source = fields.String(allow_none=True)
|
|
18
|
+
date = fields.DateTime(allow_none=True)
|
|
19
|
+
updated_at = fields.DateTime(dump_only=True)
|
|
20
|
+
|
|
21
|
+
@pre_load
|
|
22
|
+
def check_company_ids(self, in_data, **kwargs):
|
|
23
|
+
if self._get_number_of_company_fields(in_data) > 1:
|
|
24
|
+
raise ValidationError('Provide either company_sec_id or '
|
|
25
|
+
'company_ous_id, not both')
|
|
26
|
+
return in_data
|
|
27
|
+
|
|
28
|
+
def _get_number_of_company_fields(self, in_data, **kwargs):
|
|
29
|
+
result = 0
|
|
30
|
+
if 'company_sec_id' in in_data:
|
|
31
|
+
if in_data['company_sec_id'] is not None:
|
|
32
|
+
result += 1
|
|
33
|
+
if 'company_ous_id' in in_data:
|
|
34
|
+
if in_data['company_ous_id'] is not None:
|
|
35
|
+
result += 1
|
|
36
|
+
return result
|
|
File without changes
|
|
@@ -0,0 +1,42 @@
|
|
|
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 UserDocumentConditionModel(Base):
|
|
16
|
+
__tablename__ = "user_document_conditions"
|
|
17
|
+
|
|
18
|
+
id = Column(Integer, primary_key=True)
|
|
19
|
+
user_document_id = Column(
|
|
20
|
+
Integer,
|
|
21
|
+
ForeignKey('user_documents.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
|
+
data_readout = Column(Boolean, nullable=True)
|
|
35
|
+
date = Column(DateTime, nullable=True)
|
|
36
|
+
updated_at = Column(
|
|
37
|
+
DateTime,
|
|
38
|
+
nullable=False,
|
|
39
|
+
# https://stackoverflow.com/questions/58776476/why-doesnt-freezegun-work-with-sqlalchemy-default-values
|
|
40
|
+
default=lambda: datetime.utcnow(),
|
|
41
|
+
onupdate=lambda: datetime.utcnow(),
|
|
42
|
+
)
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
from marshmallow import (
|
|
2
|
+
Schema,
|
|
3
|
+
fields,
|
|
4
|
+
validate,
|
|
5
|
+
)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class UserDocumentConditionResourceSchema(Schema):
|
|
9
|
+
not_blank = validate.Length(min=1, error='Field cannot be blank')
|
|
10
|
+
|
|
11
|
+
id = fields.Integer(dump_only=True)
|
|
12
|
+
user_document_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
|
+
data_readout = fields.Boolean(allow_none=True)
|
|
17
|
+
date = fields.DateTime(allow_none=True)
|
|
18
|
+
updated_at = fields.DateTime()
|
|
File without changes
|
|
@@ -0,0 +1,42 @@
|
|
|
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 UserDocumentInterventionModel(Base):
|
|
16
|
+
__tablename__ = "user_document_interventions"
|
|
17
|
+
|
|
18
|
+
id = Column(Integer, primary_key=True)
|
|
19
|
+
user_document_id = Column(
|
|
20
|
+
Integer,
|
|
21
|
+
ForeignKey('user_documents.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
|
+
data_readout = Column(Boolean, nullable=True)
|
|
35
|
+
date = Column(DateTime, nullable=True)
|
|
36
|
+
updated_at = Column(
|
|
37
|
+
DateTime,
|
|
38
|
+
nullable=False,
|
|
39
|
+
# https://stackoverflow.com/questions/58776476/why-doesnt-freezegun-work-with-sqlalchemy-default-values
|
|
40
|
+
default=lambda: datetime.utcnow(),
|
|
41
|
+
onupdate=lambda: datetime.utcnow(),
|
|
42
|
+
)
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
from marshmallow import (
|
|
2
|
+
Schema,
|
|
3
|
+
fields,
|
|
4
|
+
validate,
|
|
5
|
+
)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class UserDocumentInterventionResourceSchema(Schema):
|
|
9
|
+
not_blank = validate.Length(min=1, error='Field cannot be blank')
|
|
10
|
+
|
|
11
|
+
id = fields.Integer(dump_only=True)
|
|
12
|
+
user_document_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
|
+
data_readout = fields.Boolean(allow_none=True)
|
|
17
|
+
date = fields.DateTime(allow_none=True)
|
|
18
|
+
updated_at = fields.DateTime()
|
|
File without changes
|
|
@@ -0,0 +1,42 @@
|
|
|
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 UserDocumentTargetModel(Base):
|
|
16
|
+
__tablename__ = "user_document_targets"
|
|
17
|
+
|
|
18
|
+
id = Column(Integer, primary_key=True)
|
|
19
|
+
user_document_id = Column(
|
|
20
|
+
Integer,
|
|
21
|
+
ForeignKey('user_documents.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
|
+
data_readout = Column(Boolean, nullable=True)
|
|
35
|
+
date = Column(DateTime, nullable=True)
|
|
36
|
+
updated_at = Column(
|
|
37
|
+
DateTime,
|
|
38
|
+
nullable=False,
|
|
39
|
+
# https://stackoverflow.com/questions/58776476/why-doesnt-freezegun-work-with-sqlalchemy-default-values
|
|
40
|
+
default=lambda: datetime.utcnow(),
|
|
41
|
+
onupdate=lambda: datetime.utcnow(),
|
|
42
|
+
)
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
from marshmallow import (
|
|
2
|
+
Schema,
|
|
3
|
+
fields,
|
|
4
|
+
validate,
|
|
5
|
+
)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class UserDocumentTargetResourceSchema(Schema):
|
|
9
|
+
not_blank = validate.Length(min=1, error='Field cannot be blank')
|
|
10
|
+
|
|
11
|
+
id = fields.Integer(dump_only=True)
|
|
12
|
+
user_document_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
|
+
data_readout = fields.Boolean(allow_none=True)
|
|
17
|
+
date = fields.DateTime(allow_none=True)
|
|
18
|
+
updated_at = fields.DateTime()
|
|
File without changes
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
from sqlalchemy import (
|
|
2
|
+
Column,
|
|
3
|
+
Integer,
|
|
4
|
+
String,
|
|
5
|
+
DateTime,
|
|
6
|
+
Boolean,
|
|
7
|
+
)
|
|
8
|
+
from datetime import datetime
|
|
9
|
+
|
|
10
|
+
from ...database import Base
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class UserOrganizationModel(Base):
|
|
14
|
+
__tablename__ = 'user_organizations'
|
|
15
|
+
|
|
16
|
+
id = Column(Integer, primary_key=True)
|
|
17
|
+
user_id = Column(String(128), nullable=False, unique=True)
|
|
18
|
+
organization_id = Column(String(128), nullable=False, index=True)
|
|
19
|
+
is_deleted = Column(Boolean, nullable=True)
|
|
20
|
+
updated_at = Column(
|
|
21
|
+
DateTime,
|
|
22
|
+
nullable=False,
|
|
23
|
+
# https://stackoverflow.com/questions/58776476/why-doesnt-freezegun-work-with-sqlalchemy-default-values
|
|
24
|
+
default=lambda: datetime.utcnow(),
|
|
25
|
+
onupdate=lambda: datetime.utcnow(),
|
|
26
|
+
)
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
from marshmallow import (
|
|
2
|
+
Schema,
|
|
3
|
+
fields,
|
|
4
|
+
)
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class UserOrganizationResourceSchema(Schema):
|
|
8
|
+
id = fields.Integer(dump_only=True)
|
|
9
|
+
user_id = fields.String(required=True)
|
|
10
|
+
organization_id = fields.String(required=True)
|
|
11
|
+
is_deleted = fields.Boolean(allow_none=True)
|
|
12
|
+
updated_at = fields.DateTime(dump_only=True)
|
|
@@ -676,12 +676,12 @@ cs_models/resources/PartnershipOutbox/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCe
|
|
|
676
676
|
cs_models/resources/PartnershipOutbox/models.py,sha256=qPmi1vPXFnKvQOgic9fUc74G-2E2ou8vI2pSED3xumY,1306
|
|
677
677
|
cs_models/resources/PartnershipOutbox/schemas.py,sha256=TnBksGVoZCT84sT6VmKwoKxFW8k2RXSYiLaED3Bj6NI,1064
|
|
678
678
|
cs_models/resources/Patent/__init__.py,sha256=2L-VuSiBinED9bucqcHENeixfazN-n4l8O5Vs02UbfY,5373
|
|
679
|
-
cs_models/resources/Patent/models.py,sha256=
|
|
680
|
-
cs_models/resources/Patent/schemas.py,sha256
|
|
679
|
+
cs_models/resources/Patent/models.py,sha256=8PneFixaE-QTWJgXDcp43u3bw7XDJ6wk1wTqLjIhIuc,2108
|
|
680
|
+
cs_models/resources/Patent/schemas.py,sha256=-ivQYU7bezG6DOn09uUoJ2v58v-06bWpyHHYqxz8mFc,4270
|
|
681
681
|
cs_models/resources/Patent/test_patent.py,sha256=Y9Hwtb-eeP3q_xZ1GGQhZVibXBDhv-a3XYKQQeM3Enw,7754
|
|
682
682
|
cs_models/resources/PatentApplication/__init__.py,sha256=FSl_P3_ySv1IOqKf2kQAMzWalGeYezWqMBmImVDiaQA,4896
|
|
683
|
-
cs_models/resources/PatentApplication/models.py,sha256=
|
|
684
|
-
cs_models/resources/PatentApplication/schemas.py,sha256=
|
|
683
|
+
cs_models/resources/PatentApplication/models.py,sha256=TD_8cbzabx-jhL9x7o3uc6Ot2HQx2COSkv1TcsBH23o,1521
|
|
684
|
+
cs_models/resources/PatentApplication/schemas.py,sha256=YoERip26QHjuYEUL11utHU3qGih4e1ZLnX8Cw3FaDdQ,1774
|
|
685
685
|
cs_models/resources/PatentApplication/test_patent_application.py,sha256=uv51TNds23LrbKrif4SMde6qJaDmzj27QyRVKbRniYo,4604
|
|
686
686
|
cs_models/resources/PatentApplicationCondition/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
687
687
|
cs_models/resources/PatentApplicationCondition/models.py,sha256=weXZPsXqWr5_YcWmowrrfnghh-YXWqPaxdnE9fvXSyM,987
|
|
@@ -790,6 +790,9 @@ cs_models/resources/PubmedTarget/schemas.py,sha256=fY6t6JwzSgc95WVPXJUKJz5kYNZoL
|
|
|
790
790
|
cs_models/resources/PubmedUpdateLedger/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
791
791
|
cs_models/resources/PubmedUpdateLedger/models.py,sha256=3roSR67RZbpxo5sQ-ZSfYItHInrJaT1lMbSKr95JjOw,744
|
|
792
792
|
cs_models/resources/PubmedUpdateLedger/schemas.py,sha256=rlXKvQNfcBUjcsYZtxbd6xBrAQslNHD5lfaLKpL2rvw,445
|
|
793
|
+
cs_models/resources/PurpleBookPatent/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
794
|
+
cs_models/resources/PurpleBookPatent/models.py,sha256=PJ8xqjt8_OU75YjU9E1KMzyRFoW32K9izfu7LdeXZ-o,947
|
|
795
|
+
cs_models/resources/PurpleBookPatent/schemas.py,sha256=x2oFaUPqXCJO0RxD-BOlaLAqFtNmZLKd1kiMo7jIXJU,573
|
|
793
796
|
cs_models/resources/RegulatoryApprovalOutbox/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
794
797
|
cs_models/resources/RegulatoryApprovalOutbox/models.py,sha256=TMMPIvz13fhqr7Ktv8uefX6OJwn0LktxSVarNhQjahQ,1092
|
|
795
798
|
cs_models/resources/RegulatoryApprovalOutbox/schemas.py,sha256=e7k0IuQb_ch_cqRklfTOymOexYNwRmnhWuB0_h9CJW8,935
|
|
@@ -857,6 +860,21 @@ cs_models/resources/UserActivity/schemas.py,sha256=NH92c_PUDiYCNRIO-t1anCNf5Mg8V
|
|
|
857
860
|
cs_models/resources/UserCollection/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
858
861
|
cs_models/resources/UserCollection/models.py,sha256=NpjpyoD0Nm_0HIqW5RjlIit9rEvwYLiO9tHf8p8tBAg,768
|
|
859
862
|
cs_models/resources/UserCollection/schemas.py,sha256=AX-g-djVvDXnblrxTpSLSy-oNsv6LBKpBsBT1XNiPQA,329
|
|
863
|
+
cs_models/resources/UserDocument/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
864
|
+
cs_models/resources/UserDocument/models.py,sha256=x3q3yLDKuKw3IRAODLrYR264lXmEPkX-6jbuZg4XSyk,1058
|
|
865
|
+
cs_models/resources/UserDocument/schemas.py,sha256=XR_3lW3SJjh9Vi4U-axE_jqtzURmF0LJvxO9jYbfCpA,677
|
|
866
|
+
cs_models/resources/UserDocumentCompany/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
867
|
+
cs_models/resources/UserDocumentCompany/models.py,sha256=f7A0qKey1CfGrb2_SvM4k6K6HGHr1KZN12QxSYvD1U4,995
|
|
868
|
+
cs_models/resources/UserDocumentCompany/schemas.py,sha256=JwQQ4O8VvJziMai78xHNO97Z8y-xgM8HMUsId-2hBWA,1191
|
|
869
|
+
cs_models/resources/UserDocumentCondition/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
870
|
+
cs_models/resources/UserDocumentCondition/models.py,sha256=FZzNgxc4-zZ5TiuJYfxNjPvi5mZCunTc9sVOXBGYpqc,1007
|
|
871
|
+
cs_models/resources/UserDocumentCondition/schemas.py,sha256=BeeRrfrLW9N3k0IsOhoi3CXXos4rNbJ_ka4Qqbj-Ddw,550
|
|
872
|
+
cs_models/resources/UserDocumentIntervention/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
873
|
+
cs_models/resources/UserDocumentIntervention/models.py,sha256=XDW1UIMnsQoyszHeel_aaCGnd_XfWxIOJF-JJBn9IoM,1019
|
|
874
|
+
cs_models/resources/UserDocumentIntervention/schemas.py,sha256=XKgWDYGiU7NTPqNHkqxWgbdz0wMwt8__SlxrCPhEqrU,556
|
|
875
|
+
cs_models/resources/UserDocumentTarget/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
876
|
+
cs_models/resources/UserDocumentTarget/models.py,sha256=Wm0iA3lWKIeRSXbOiXzrp-WB2JTPwjATvzevIjcOGD0,995
|
|
877
|
+
cs_models/resources/UserDocumentTarget/schemas.py,sha256=xX8DuLwpRVxXjw36WPjJBWwpU1RaDqQShotrlgfUmKw,544
|
|
860
878
|
cs_models/resources/UserFile/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
861
879
|
cs_models/resources/UserFile/models.py,sha256=-eQ-6VqLl2SDiQ1mpuIxSwt8rnFDF0F-jALulgqZauY,744
|
|
862
880
|
cs_models/resources/UserFile/schemas.py,sha256=UN2-NlmGSW5Xvkphs7vSQjJ0uWjGNXFi_eOlytO1jV8,317
|
|
@@ -866,6 +884,9 @@ cs_models/resources/UserLLMUse/schemas.py,sha256=rkBf5fPyxCzevEKeVsB74Nv98ILWQwR
|
|
|
866
884
|
cs_models/resources/UserNote/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
867
885
|
cs_models/resources/UserNote/models.py,sha256=4p_FpkJiuXOd-gak3gIUeeJc-cAyno8UDxXR3KBXPr8,744
|
|
868
886
|
cs_models/resources/UserNote/schemas.py,sha256=9ddZrnjQ98R6DnByCSa5-dzDznLkkPVGQAgw7_3grkQ,317
|
|
887
|
+
cs_models/resources/UserOrganization/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
888
|
+
cs_models/resources/UserOrganization/models.py,sha256=CWhvuIWxQYKdFP7_54yFSy3npWyf5FKlgUms-O8V7MU,726
|
|
889
|
+
cs_models/resources/UserOrganization/schemas.py,sha256=oJEzvjbnkJFsYwb00uHj_9kDvqc9G9MtfTdEDxi6_0o,332
|
|
869
890
|
cs_models/resources/UserSavedSearch/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
870
891
|
cs_models/resources/UserSavedSearch/models.py,sha256=3xqXAS-IcLQ_EV9KppG9xpdrRVSQ7md_dbj1KING4rs,1071
|
|
871
892
|
cs_models/resources/UserSavedSearch/schemas.py,sha256=n8_F6j5vm3JX_fJokOZMRGf6TEXPdBRrUDOQjCrvWsY,686
|
|
@@ -997,7 +1018,7 @@ cs_models/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
|
997
1018
|
cs_models/utils/alchemy.py,sha256=fhINGFn41owJ2DLXQKXAAtLqeZ1BRzD_qU0wPK_bsGQ,1598
|
|
998
1019
|
cs_models/utils/utils.py,sha256=bY623DuzycfPQiaOQT2AxfANeWfwr5w76dBuQ813-ns,3664
|
|
999
1020
|
cs_models/utils/profiling/__init__.py,sha256=N-73vb0M92C975fxgXyBCBjCPELl8Oh21ZY_-tzDnns,569
|
|
1000
|
-
cs_models-0.0.
|
|
1001
|
-
cs_models-0.0.
|
|
1002
|
-
cs_models-0.0.
|
|
1003
|
-
cs_models-0.0.
|
|
1021
|
+
cs_models-0.0.614.dist-info/METADATA,sha256=Tr8N1xE1JdTROjfjy0jMKKQw_uiq3Zkad4KC7ffVyDY,792
|
|
1022
|
+
cs_models-0.0.614.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
|
|
1023
|
+
cs_models-0.0.614.dist-info/top_level.txt,sha256=M7CA8Nh5t0vRManQ9gHfphhO16uhMqIbfaxr1jPDg18,10
|
|
1024
|
+
cs_models-0.0.614.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|