Software_Engineering_Field_.../SiteManagementSystem(Softwa.../Service/PythonServiceFile/layer.py

52 lines
2.1 KiB
Python

import clr
from user import User
from field import Field
from user_field import FieldRecord
clr.AddReference('System')
from System import Guid, DateTime
class Layer:
def __init__(self, layer):
self._field_db = layer.FieldDb
self._record_db = layer.RecordDb
self._finished_field_recoed_db = layer.FinishedFieldRecordDb
def add_field(self, field: Field) -> 'Layer':
self._field_db.Add(field.parse_to_csharp_object(self._field_db.GetDefaultEntity()))
return self
# The value property will
def find_field(self, key: str, value: str) -> [Field]:
return [Field(t) for t in self._field_db.FindAll(key, Guid.Parse(value))]
def remove_field(self, field: Field) -> 'Layer':
self._field_db.TryDelete(field.id, field.parse_to_csharp_object(self._field_db.GetDefaultEntity()).Id)
return self
def add_record(self, record: FieldRecord) -> 'Layer':
self._record_db.Add(record.parse_to_csharp_object(self._record_db.GetDefaultEntity()))
return self
def find_record(self, key: str, value: str) -> [FieldRecord]:
return [FieldRecord(t) for t in self._record_db.FindAll(key, Guid.Parse(value))]
# One User only allowed to book one field at a time
def remove_record(self, record: FieldRecord) -> 'Layer':
self._record_db.TryDelete("Uid", record.parse_to_csharp_object(self._record_db.GetDefaultEntity()).Uid)
return self
def add_finished_record(self, record: UserFieldRecord) -> 'Layer':
self._finished_field_recoed_db.Add(record.parse_to_csharp_object(self._finished_field_recoed_db.GetDefaultEntity()))
return self
def find_finished_record(self, key: str, value: str) -> [UserFieldRecord]:
return [UserFieldRecord(t) for t in self._finished_field_recoed_db.FindAll(key, Guid.Parse(value))]
# One User only allowed to book one field at a time
def remove_finished_record(self, record: UserFieldRecord) -> 'Layer':
self._finished_field_recoed_db.TryDelete("Uid", record.parse_to_csharp_object(self._finished_field_recoed_db.GetDefaultEntity()).Uid)
return self