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

54 lines
2.2 KiB
Python
Raw Normal View History

import clr
2024-11-03 11:21:47 +08:00
from user import User
from field import Field
2024-11-05 21:04:21 +08:00
from field_record import FieldRecord
2024-11-03 11:21:47 +08:00
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
2024-11-03 11:21:47 +08:00
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]:
2024-11-05 21:04:21 +08:00
if key == "Id":
return [Field(t) for t in self._field_db.FindAll(key, Guid.Parse(value))]
return [Field(t) for t in self._field_db.FindAll(key, value)]
2024-11-03 11:21:47 +08:00
def remove_field(self, field: Field) -> 'Layer':
2024-11-05 21:04:21 +08:00
self._field_db.TryDelete("Id", field.parse_to_csharp_object(self._field_db.GetDefaultEntity()).Id)
2024-11-03 11:21:47 +08:00
return self
2024-11-04 22:26:45 +08:00
def add_record(self, record: FieldRecord) -> 'Layer':
2024-11-03 11:21:47 +08:00
self._record_db.Add(record.parse_to_csharp_object(self._record_db.GetDefaultEntity()))
return self
2024-11-04 22:26:45 +08:00
def find_record(self, key: str, value: str) -> [FieldRecord]:
return [FieldRecord(t) for t in self._record_db.FindAll(key, Guid.Parse(value))]
2024-11-03 11:21:47 +08:00
# One User only allowed to book one field at a time
2024-11-04 22:26:45 +08:00
def remove_record(self, record: FieldRecord) -> 'Layer':
2024-11-03 11:21:47 +08:00
self._record_db.TryDelete("Uid", record.parse_to_csharp_object(self._record_db.GetDefaultEntity()).Uid)
return self
2024-11-05 21:04:21 +08:00
def add_finished_record(self, record: FieldRecord) -> 'Layer':
self._finished_field_recoed_db.Add(record.parse_to_csharp_object(self._finished_field_recoed_db.GetDefaultEntity()))
return self
2024-11-05 21:04:21 +08:00
def find_finished_record(self, key: str, value: str) -> [FieldRecord]:
return [FieldRecord(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
2024-11-05 21:04:21 +08:00
def remove_finished_record(self, record: FieldRecord) -> 'Layer':
self._finished_field_recoed_db.TryDelete("Uid", record.parse_to_csharp_object(self._finished_field_recoed_db.GetDefaultEntity()).Uid)
return self