updating STUB objects, slightly adapting data models
This commit is contained in:
parent
a45526a42b
commit
81c93412ad
@ -1,5 +1,5 @@
|
|||||||
from dataclasses import field, dataclass
|
from dataclasses import field, dataclass
|
||||||
from marshmallow import Schema, fields, INCLUDE, ValidationError, validate, validates
|
from marshmallow import Schema, fields, INCLUDE, ValidationError, validate, validates, post_load
|
||||||
from marshmallow.fields import Field
|
from marshmallow.fields import Field
|
||||||
from marshmallow_enum import EnumField
|
from marshmallow_enum import EnumField
|
||||||
from enum import IntEnum
|
from enum import IntEnum
|
||||||
@ -105,7 +105,7 @@ class History:
|
|||||||
return self(id, participant_id, shipcall_id, timestamp, eta, ObjectType(type), OperationType(operation))
|
return self(id, participant_id, shipcall_id, timestamp, eta, ObjectType(type), OperationType(operation))
|
||||||
|
|
||||||
class Error(Schema):
|
class Error(Schema):
|
||||||
message = fields.String(required=True)
|
message = fields.String(metadata={'required':True})
|
||||||
|
|
||||||
|
|
||||||
class GetVerifyInlineResp(Schema):
|
class GetVerifyInlineResp(Schema):
|
||||||
@ -164,41 +164,34 @@ class ShipcallSchema(Schema):
|
|||||||
id = fields.Integer()
|
id = fields.Integer()
|
||||||
ship_id = fields.Integer()
|
ship_id = fields.Integer()
|
||||||
type = fields.Integer()
|
type = fields.Integer()
|
||||||
eta = fields.DateTime(Required = False, allow_none=True)
|
eta = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
voyage = fields.String(allow_none=True, metadata={'Required':False}, validate=[validate.Length(max=16)]) # Solving: RemovedInMarshmallow4Warning: Passing field metadata as keyword arguments is deprecated. Use the explicit `metadata=...` argument instead. Additional metadata: {'Required': False}
|
voyage = fields.String(allow_none=True, metadata={'Required':False}, validate=[validate.Length(max=16)]) # Solving: RemovedInMarshmallow4Warning: Passing field metadata as keyword arguments is deprecated. Use the explicit `metadata=...` argument instead. Additional metadata: {'Required': False}
|
||||||
etd = fields.DateTime(Required = False, allow_none=True)
|
etd = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
arrival_berth_id = fields.Integer(Required = False, allow_none=True)
|
arrival_berth_id = fields.Integer(metadata={'required':False}, allow_none=True)
|
||||||
departure_berth_id = fields.Integer(Required = False, allow_none=True)
|
departure_berth_id = fields.Integer(metadata={'required':False}, allow_none=True)
|
||||||
tug_required = fields.Bool(Required = False, allow_none=True)
|
tug_required = fields.Bool(metadata={'required':False}, allow_none=True)
|
||||||
pilot_required = fields.Bool(Required = False, allow_none=True)
|
pilot_required = fields.Bool(metadata={'required':False}, allow_none=True)
|
||||||
flags = fields.Integer(Required = False, allow_none=True)
|
flags = fields.Integer(metadata={'required':False}, allow_none=True)
|
||||||
pier_side = fields.Bool(Required = False, allow_none=True)
|
pier_side = fields.Bool(metadata={'required':False}, allow_none=True)
|
||||||
bunkering = fields.Bool(Required = False, allow_none=True)
|
bunkering = fields.Bool(metadata={'required':False}, allow_none=True)
|
||||||
replenishing_terminal = fields.Bool(Required = False, allow_none=True)
|
replenishing_terminal = fields.Bool(metadata={'required':False}, allow_none=True)
|
||||||
replenishing_lock = fields.Bool(Required = False, allow_none=True)
|
replenishing_lock = fields.Bool(metadata={'required':False}, allow_none=True)
|
||||||
draft = fields.Float(Required = False, allow_none=True, validate=[validate.Range(min=0, max=20, min_inclusive=False, max_inclusive=True)])
|
draft = fields.Float(metadata={'required':False}, allow_none=True, validate=[validate.Range(min=0, max=20, min_inclusive=False, max_inclusive=True)])
|
||||||
tidal_window_from = fields.DateTime(Required = False, allow_none=True)
|
tidal_window_from = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
tidal_window_to = fields.DateTime(Required = False, allow_none=True)
|
tidal_window_to = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
rain_sensitive_cargo = fields.Bool(Required = False, allow_none=True)
|
rain_sensitive_cargo = fields.Bool(metadata={'required':False}, allow_none=True)
|
||||||
recommended_tugs = fields.Integer(Required = False, allow_none=True)
|
recommended_tugs = fields.Integer(metadata={'required':False}, allow_none=True)
|
||||||
anchored = fields.Bool(Required = False, allow_none=True)
|
anchored = fields.Bool(metadata={'required':False}, allow_none=True)
|
||||||
moored_lock = fields.Bool(Required = False, allow_none=True)
|
moored_lock = fields.Bool(metadata={'required':False}, allow_none=True)
|
||||||
canceled = fields.Bool(Required = False, allow_none=True)
|
canceled = fields.Bool(metadata={'required':False}, allow_none=True)
|
||||||
<<<<<<< HEAD
|
evaluation = fields.Enum(EvaluationType, metadata={'required':False}, allow_none=True, default=EvaluationType.undefined)
|
||||||
evaluation = fields.Enum(EvaluationType, required=False, allow_none=True, default=EvaluationType.undefined)
|
|
||||||
evaluation_message = fields.Str(allow_none=True, metadata={'Required':False}) # Solving: RemovedInMarshmallow4Warning: Passing field metadata as keyword arguments is deprecated. Use the explicit `metadata=...` argument instead. Additional metadata: {'Required': False}
|
evaluation_message = fields.Str(allow_none=True, metadata={'Required':False}) # Solving: RemovedInMarshmallow4Warning: Passing field metadata as keyword arguments is deprecated. Use the explicit `metadata=...` argument instead. Additional metadata: {'Required': False}
|
||||||
evaluation_time = fields.DateTime(Required = False, allow_none=True)
|
evaluation_time = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
evaluation_notifications_sent = fields.Bool(Required = False, allow_none=True)
|
evaluation_notifications_sent = fields.Bool(metadata={'required':False}, allow_none=True)
|
||||||
time_ref_point = fields.Int(Required = False, allow_none=True)
|
time_ref_point = fields.Integer(metadata={'required':False}, allow_none=True)
|
||||||
=======
|
|
||||||
evaluation = fields.Integer(Required = False, allow_none=True)
|
|
||||||
evaluation_message = fields.String(allow_none=True, metadata={'Required':False}) # Solving: RemovedInMarshmallow4Warning: Passing field metadata as keyword arguments is deprecated. Use the explicit `metadata=...` argument instead. Additional metadata: {'Required': False}
|
|
||||||
evaluation_time = fields.DateTime(Required = False, allow_none=True)
|
|
||||||
evaluation_notifications_sent = fields.Bool(Required = False, allow_none=True)
|
|
||||||
>>>>>>> a5284a4 (implementing notifications, working on input validation)
|
|
||||||
participants = fields.List(fields.Nested(ParticipantAssignmentSchema))
|
participants = fields.List(fields.Nested(ParticipantAssignmentSchema))
|
||||||
created = fields.DateTime(Required = False, allow_none=True)
|
created = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
modified = fields.DateTime(Required = False, allow_none=True)
|
modified = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
|
|
||||||
@post_load
|
@post_load
|
||||||
def make_shipcall(self, data, **kwargs):
|
def make_shipcall(self, data, **kwargs):
|
||||||
@ -258,8 +251,6 @@ class Shipcall:
|
|||||||
created: datetime
|
created: datetime
|
||||||
modified: datetime
|
modified: datetime
|
||||||
participants: List[Participant_Assignment] = field(default_factory=list)
|
participants: List[Participant_Assignment] = field(default_factory=list)
|
||||||
evaluation_time : datetime = None
|
|
||||||
evaluation_notifications_sent : bool = None
|
|
||||||
|
|
||||||
def to_json(self):
|
def to_json(self):
|
||||||
return {
|
return {
|
||||||
@ -313,30 +304,30 @@ class TimesSchema(Schema):
|
|||||||
super().__init__(unknown=None)
|
super().__init__(unknown=None)
|
||||||
pass
|
pass
|
||||||
|
|
||||||
id = fields.Integer(Required=False)
|
id = fields.Integer(metadata={'required':False})
|
||||||
eta_berth = fields.DateTime(Required = False, allow_none=True)
|
eta_berth = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
eta_berth_fixed = fields.Bool(Required = False, allow_none=True)
|
eta_berth_fixed = fields.Bool(metadata={'required':False}, allow_none=True)
|
||||||
etd_berth = fields.DateTime(Required = False, allow_none=True)
|
etd_berth = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
etd_berth_fixed = fields.Bool(Required = False, allow_none=True)
|
etd_berth_fixed = fields.Bool(metadata={'required':False}, allow_none=True)
|
||||||
lock_time = fields.DateTime(Required = False, allow_none=True)
|
lock_time = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
lock_time_fixed = fields.Bool(Required = False, allow_none=True)
|
lock_time_fixed = fields.Bool(metadata={'required':False}, allow_none=True)
|
||||||
zone_entry = fields.DateTime(Required = False, allow_none=True)
|
zone_entry = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
zone_entry_fixed = fields.Bool(Required = False, allow_none=True)
|
zone_entry_fixed = fields.Bool(metadata={'required':False}, allow_none=True)
|
||||||
operations_start = fields.DateTime(Required = False, allow_none=True)
|
operations_start = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
operations_end = fields.DateTime(Required = False, allow_none=True)
|
operations_end = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
remarks = fields.String(Required = False, allow_none=True, validate=[validate.Length(max=256)])
|
remarks = fields.String(metadata={'required':False}, allow_none=True, validate=[validate.Length(max=256)])
|
||||||
participant_id = fields.Integer(Required = True)
|
participant_id = fields.Integer(metadata={'required':True})
|
||||||
berth_id = fields.Integer(Required = False, allow_none = True)
|
berth_id = fields.Integer(metadata={'required':False}, allow_none = True)
|
||||||
berth_info = fields.String(Required = False, allow_none=True, validate=[validate.Length(max=256)])
|
berth_info = fields.String(metadata={'required':False}, allow_none=True, validate=[validate.Length(max=256)])
|
||||||
pier_side = fields.Bool(Required = False, allow_none = True)
|
pier_side = fields.Bool(metadata={'required':False}, allow_none = True)
|
||||||
shipcall_id = fields.Integer(Required = True)
|
shipcall_id = fields.Integer(metadata={'required':True})
|
||||||
participant_type = fields.Integer(Required = False, allow_none=True)
|
participant_type = fields.Integer(metadata={'required':False}, allow_none=True)
|
||||||
ata = fields.DateTime(Required = False, allow_none=True)
|
ata = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
atd = fields.DateTime(Required = False, allow_none=True)
|
atd = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
eta_interval_end = fields.DateTime(Required = False, allow_none=True)
|
eta_interval_end = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
etd_interval_end = fields.DateTime(Required = False, allow_none=True)
|
etd_interval_end = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
created = fields.DateTime(Required = False, allow_none=True)
|
created = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
modified = fields.DateTime(Required = False, allow_none=True)
|
modified = fields.DateTime(metadata={'required':False}, allow_none=True)
|
||||||
|
|
||||||
@validates("eta_berth")
|
@validates("eta_berth")
|
||||||
def validate_eta_berth(self, value):
|
def validate_eta_berth(self, value):
|
||||||
@ -351,7 +342,7 @@ class UserSchema(Schema):
|
|||||||
def __init__(self):
|
def __init__(self):
|
||||||
super().__init__(unknown=None)
|
super().__init__(unknown=None)
|
||||||
pass
|
pass
|
||||||
id = fields.Integer(required=True)
|
id = fields.Integer(metadata={'required':True})
|
||||||
first_name = fields.String(allow_none=True, metadata={'Required':False}, validate=[validate.Length(max=64)])
|
first_name = fields.String(allow_none=True, metadata={'Required':False}, validate=[validate.Length(max=64)])
|
||||||
last_name = fields.String(allow_none=True, metadata={'Required':False}, validate=[validate.Length(max=64)])
|
last_name = fields.String(allow_none=True, metadata={'Required':False}, validate=[validate.Length(max=64)])
|
||||||
user_phone = fields.String(allow_none=True, metadata={'Required':False})
|
user_phone = fields.String(allow_none=True, metadata={'Required':False})
|
||||||
@ -439,7 +430,7 @@ class ShipSchema(Schema):
|
|||||||
super().__init__(unknown=None)
|
super().__init__(unknown=None)
|
||||||
pass
|
pass
|
||||||
|
|
||||||
id = fields.Int(Required=False)
|
id = fields.Int(metadata={'required':False})
|
||||||
name = fields.String(allow_none=False, metadata={'Required':True})
|
name = fields.String(allow_none=False, metadata={'Required':True})
|
||||||
imo = fields.Int(allow_none=False, metadata={'Required':True})
|
imo = fields.Int(allow_none=False, metadata={'Required':True})
|
||||||
callsign = fields.String(allow_none=True, metadata={'Required':False})
|
callsign = fields.String(allow_none=True, metadata={'Required':False})
|
||||||
|
|||||||
@ -7,7 +7,6 @@ def get_notification_simple():
|
|||||||
"""creates a default notification, where 'created' is now, and modified is now+10 seconds"""
|
"""creates a default notification, where 'created' is now, and modified is now+10 seconds"""
|
||||||
notification_id = generate_uuid1_int() # uid?
|
notification_id = generate_uuid1_int() # uid?
|
||||||
times_id = generate_uuid1_int() # uid?
|
times_id = generate_uuid1_int() # uid?
|
||||||
acknowledged = False
|
|
||||||
level = 10
|
level = 10
|
||||||
type = 0
|
type = 0
|
||||||
message = "hello world"
|
message = "hello world"
|
||||||
@ -17,7 +16,6 @@ def get_notification_simple():
|
|||||||
notification = Notification(
|
notification = Notification(
|
||||||
notification_id,
|
notification_id,
|
||||||
times_id,
|
times_id,
|
||||||
acknowledged,
|
|
||||||
level,
|
level,
|
||||||
type,
|
type,
|
||||||
message,
|
message,
|
||||||
|
|||||||
@ -28,6 +28,11 @@ def get_times_full_simple():
|
|||||||
zone_entry = etd_berth+datetime.timedelta(hours=0, minutes=15)
|
zone_entry = etd_berth+datetime.timedelta(hours=0, minutes=15)
|
||||||
zone_entry_fixed = False
|
zone_entry_fixed = False
|
||||||
|
|
||||||
|
ata = eta_berth+datetime.timedelta(hours=0, minutes=15)
|
||||||
|
atd = etd_berth+datetime.timedelta(hours=0, minutes=15)
|
||||||
|
eta_interval_end = eta_berth + datetime.timedelta(hours=0, minutes=25)
|
||||||
|
etd_interval_end = etd_berth + datetime.timedelta(hours=0, minutes=25)
|
||||||
|
|
||||||
operations_start = zone_entry+datetime.timedelta(hours=1, minutes=30)
|
operations_start = zone_entry+datetime.timedelta(hours=1, minutes=30)
|
||||||
operations_end = operations_start+datetime.timedelta(hours=4, minutes=30)
|
operations_end = operations_start+datetime.timedelta(hours=4, minutes=30)
|
||||||
|
|
||||||
@ -63,6 +68,10 @@ def get_times_full_simple():
|
|||||||
pier_side=pier_side,
|
pier_side=pier_side,
|
||||||
participant_type=participant_type,
|
participant_type=participant_type,
|
||||||
shipcall_id=shipcall_id,
|
shipcall_id=shipcall_id,
|
||||||
|
ata=ata,
|
||||||
|
atd=atd,
|
||||||
|
eta_interval_end=eta_interval_end,
|
||||||
|
etd_interval_end=etd_interval_end,
|
||||||
created=created,
|
created=created,
|
||||||
modified=modified,
|
modified=modified,
|
||||||
)
|
)
|
||||||
|
|||||||
@ -19,6 +19,11 @@ def get_user_simple():
|
|||||||
created = datetime.datetime.now()
|
created = datetime.datetime.now()
|
||||||
modified = created+datetime.timedelta(seconds=10)
|
modified = created+datetime.timedelta(seconds=10)
|
||||||
|
|
||||||
|
notify_email = True
|
||||||
|
notify_whatsapp = True
|
||||||
|
notify_signal = True
|
||||||
|
notify_popup = True
|
||||||
|
|
||||||
user = User(
|
user = User(
|
||||||
user_id,
|
user_id,
|
||||||
participant_id,
|
participant_id,
|
||||||
@ -29,6 +34,10 @@ def get_user_simple():
|
|||||||
user_phone,
|
user_phone,
|
||||||
password_hash,
|
password_hash,
|
||||||
api_key,
|
api_key,
|
||||||
|
notify_email,
|
||||||
|
notify_whatsapp,
|
||||||
|
notify_signal,
|
||||||
|
notify_popup,
|
||||||
created,
|
created,
|
||||||
modified
|
modified
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user