test application updated@build living space
This commit is contained in:
@@ -35,17 +35,13 @@ class AccountRecordsListEventMethods(MethodToEvent):
|
||||
AccountRecords.pre_query = AccountRecords.filter_all(
|
||||
AccountRecords.company_id
|
||||
== token_dict.selected_occupant.responsible_company_id,
|
||||
*AccountRecords.valid_record_args(AccountRecords),
|
||||
)
|
||||
elif isinstance(token_dict, EmployeeTokenObject):
|
||||
AccountRecords.pre_query = AccountRecords.filter_all(
|
||||
AccountRecords.company_id == token_dict.selected_company.company_id,
|
||||
*AccountRecords.valid_record_args(AccountRecords),
|
||||
)
|
||||
records = AccountRecords.filter_all(
|
||||
*AccountRecords.smart_query(list_options.query),
|
||||
*AccountRecords.valid_record_args(AccountRecords),
|
||||
)
|
||||
AccountRecords.filter_attr = list_options
|
||||
records = AccountRecords.filter_all()
|
||||
return AlchemyJsonResponse(
|
||||
completed=True, message="Update Build record", result=records
|
||||
)
|
||||
@@ -90,7 +86,6 @@ class AccountRecordsCreateEventMethods(MethodToEvent):
|
||||
# employee_id=token_dict.selected_employee.employee_id,
|
||||
# )
|
||||
# build_ids_list = Build.filter_all(
|
||||
# *Build.valid_record_args(Build),
|
||||
# )
|
||||
# build_iban = BuildIbans.filter_one(
|
||||
# BuildIbans.iban == data.iban,
|
||||
|
||||
@@ -53,7 +53,6 @@ class AddressListEventMethods(MethodToEvent):
|
||||
street_id[0]
|
||||
for street_id in AddressPostcode.select_only(
|
||||
AddressPostcode.id.in_(post_code_id_list),
|
||||
*AddressPostcode.valid_record_args(AddressPostcode),
|
||||
select_args=[AddressPostcode.street_id],
|
||||
order_by=AddressPostcode.street_id.desc(),
|
||||
).data
|
||||
@@ -65,11 +64,9 @@ class AddressListEventMethods(MethodToEvent):
|
||||
)
|
||||
Addresses.pre_query = Addresses.filter_all(
|
||||
Addresses.street_id.in_(get_street_ids),
|
||||
*Addresses.valid_record_args(Addresses),
|
||||
).query
|
||||
Addresses.filter_attr = list_options
|
||||
records = Addresses.filter_all(
|
||||
*Addresses.valid_record_args(Addresses),
|
||||
).data
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
@@ -109,7 +106,6 @@ class AddressCreateEventMethods(MethodToEvent):
|
||||
):
|
||||
post_code = AddressPostcode.filter_one(
|
||||
AddressPostcode.uu_id == data.post_code_uu_id,
|
||||
*AddressPostcode.valid_record_args(AddressPostcode),
|
||||
).data
|
||||
if not post_code:
|
||||
raise HTTPException(
|
||||
@@ -122,16 +118,9 @@ class AddressCreateEventMethods(MethodToEvent):
|
||||
data_dict["street_uu_id"] = str(post_code.street_uu_id)
|
||||
del data_dict["post_code_uu_id"]
|
||||
address = Addresses.find_or_create(**data_dict)
|
||||
relation_employee = RelationshipEmployee2PostCode.find_or_create(
|
||||
employee_id=token_dict.selected_company.employee_id,
|
||||
member_id=post_code.id,
|
||||
company_id=token_dict.selected_company.company_id,
|
||||
)
|
||||
address.save()
|
||||
address.update(is_confirmed=True)
|
||||
address.save()
|
||||
relation_employee.update(is_confirmed=True)
|
||||
relation_employee.save()
|
||||
return JSONResponse(
|
||||
content={
|
||||
"completed": True,
|
||||
@@ -231,7 +220,6 @@ class AddressUpdateEventMethods(MethodToEvent):
|
||||
if isinstance(token_dict, EmployeeTokenObject):
|
||||
address = Addresses.filter_one(
|
||||
Addresses.uu_id == address_uu_id,
|
||||
*Addresses.valid_record_args(Addresses),
|
||||
).data
|
||||
if not address:
|
||||
raise HTTPException(
|
||||
@@ -273,13 +261,9 @@ class AddressPatchEventMethods(MethodToEvent):
|
||||
):
|
||||
address = Addresses.filter_one(
|
||||
Addresses.uu_id == address_uu_id,
|
||||
*Addresses.valid_record_args(Addresses),
|
||||
).data
|
||||
post_code = RelationshipEmployee2PostCode.filter_one(
|
||||
RelationshipEmployee2PostCode.member_id == address.post_code_id,
|
||||
*RelationshipEmployee2PostCode.valid_record_args(
|
||||
RelationshipEmployee2PostCode
|
||||
),
|
||||
)
|
||||
if not post_code:
|
||||
raise HTTPException(
|
||||
@@ -318,7 +302,6 @@ class AddressPostCodeCreateEventMethods(MethodToEvent):
|
||||
data_dump = data.excluded_dump()
|
||||
street = AddressStreet.filter_one(
|
||||
AddressStreet.uu_id == data.street_uu_id,
|
||||
*AddressStreet.valid_record_args(AddressStreet),
|
||||
).data
|
||||
if not street:
|
||||
raise HTTPException(
|
||||
@@ -370,7 +353,6 @@ class AddressPostCodeUpdateEventMethods(MethodToEvent):
|
||||
)
|
||||
post_code = AddressPostcode.filter_one(
|
||||
AddressPostcode.uu_id == post_code_uu_id,
|
||||
*AddressPostcode.valid_record_args(AddressPostcode),
|
||||
).data
|
||||
if not post_code:
|
||||
raise HTTPException(
|
||||
@@ -420,7 +402,6 @@ class AddressPostCodeListEventMethods(MethodToEvent):
|
||||
post_code_list = AddressPostcode.__many__table__.filter_all(
|
||||
AddressPostcode.__many__table__.company_id
|
||||
== token_dict.selected_company.company_id,
|
||||
*AddressPostcode.valid_record_args(AddressPostcode.__many__table__),
|
||||
).data
|
||||
if not post_code_list:
|
||||
raise HTTPException(
|
||||
@@ -432,12 +413,9 @@ class AddressPostCodeListEventMethods(MethodToEvent):
|
||||
AddressPostcode.id.in_(
|
||||
[post_code.member_id for post_code in post_code_list]
|
||||
),
|
||||
*AddressPostcode.valid_record_args(AddressPostcode),
|
||||
).query
|
||||
AddressPostcode.filter_attr = list_options
|
||||
records = AddressPostcode.filter_all(
|
||||
*AddressPostcode.valid_record_args(AddressPostcode),
|
||||
).data
|
||||
records = AddressPostcode.filter_all().data
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
message="List Address records",
|
||||
|
||||
@@ -116,13 +116,11 @@ class AuthenticationSelectEventMethods(MethodToEvent):
|
||||
)
|
||||
if selected_company := Companies.filter_one(
|
||||
Companies.uu_id == data.company_uu_id,
|
||||
*Companies.valid_record_args(Companies),
|
||||
).data:
|
||||
department_ids = [
|
||||
department.id
|
||||
for department in Departments.filter_all(
|
||||
Departments.company_id == selected_company.id,
|
||||
*Departments.valid_record_args(Departments),
|
||||
).data
|
||||
]
|
||||
duties_ids = [
|
||||
@@ -130,41 +128,37 @@ class AuthenticationSelectEventMethods(MethodToEvent):
|
||||
for duties in Duties.filter_all(
|
||||
Duties.company_id == selected_company.id,
|
||||
Duties.department_id.in_(department_ids),
|
||||
*Duties.valid_record_args(Duties),
|
||||
).data
|
||||
]
|
||||
staff_ids = [
|
||||
staff.id
|
||||
for staff in Staff.filter_all(
|
||||
Staff.duties_id.in_(duties_ids), *Staff.valid_record_args(Staff)
|
||||
Staff.duties_id.in_(duties_ids),
|
||||
).data
|
||||
]
|
||||
employee = Employees.filter_one(
|
||||
Employees.people_id == token_user.person_id,
|
||||
Employees.staff_id.in_(staff_ids),
|
||||
*Employees.valid_record_args(Employees),
|
||||
).data
|
||||
|
||||
reachable_event_list_id, reachable_event_list_uu_id = (
|
||||
Event2Employee.get_event_id_by_employee_id(employee_id=employee.id)
|
||||
)
|
||||
staff = Staff.filter_one(
|
||||
Staff.id == employee.staff_id, *Staff.valid_record_args(Staff)
|
||||
Staff.id == employee.staff_id,
|
||||
).data
|
||||
duties = Duties.filter_one(
|
||||
Duties.id == staff.duties_id, *Duties.valid_record_args(Duties)
|
||||
Duties.id == staff.duties_id,
|
||||
).data
|
||||
department = Departments.filter_one(
|
||||
Departments.id == duties.department_id,
|
||||
*Departments.valid_record_args(Departments),
|
||||
).data
|
||||
bulk_id = Duty.filter_one(
|
||||
Duty.duty_code == "BULK", *Duty.valid_record_args(Duty)
|
||||
Duty.duty_code == "BULK",
|
||||
).data
|
||||
bulk_duty_id = Duties.filter_one(
|
||||
Duties.company_id == selected_company.id,
|
||||
Duties.duties_id == bulk_id.id,
|
||||
*Duties.valid_record_args(Duties),
|
||||
).data
|
||||
update_selected_to_redis(
|
||||
request=request,
|
||||
@@ -202,7 +196,6 @@ class AuthenticationSelectEventMethods(MethodToEvent):
|
||||
)
|
||||
build_part = BuildParts.filter_one(
|
||||
BuildParts.uu_id == data.build_part_uu_id,
|
||||
*BuildParts.valid_record_args(BuildParts),
|
||||
).data
|
||||
if not build_part:
|
||||
raise HTTPException(
|
||||
@@ -210,27 +203,22 @@ class AuthenticationSelectEventMethods(MethodToEvent):
|
||||
detail="Build Part is not found",
|
||||
)
|
||||
build = Build.filter_one(
|
||||
Build.id == build_part.build_id, *Build.valid_record_args(Build)
|
||||
Build.id == build_part.build_id
|
||||
).data
|
||||
related_company = RelationshipEmployee2Build.filter_one(
|
||||
RelationshipEmployee2Build.member_id == build.id,
|
||||
*RelationshipEmployee2Build.valid_record_args(
|
||||
RelationshipEmployee2Build
|
||||
),
|
||||
|
||||
).data
|
||||
company_related = Companies.filter_one(
|
||||
Companies.id == related_company.company_id,
|
||||
*Companies.valid_record_args(Companies),
|
||||
).data
|
||||
responsible_employee = Employees.filter_one(
|
||||
Employees.id == related_company.employee_id,
|
||||
*Employees.valid_record_args(Employees),
|
||||
).data
|
||||
if selected_occupant_type := BuildLivingSpace.filter_one(
|
||||
BuildLivingSpace.occupant_type == occupant_type.id,
|
||||
BuildLivingSpace.person_id == token_user.person_id,
|
||||
BuildLivingSpace.build_parts_id == build_part.id,
|
||||
*BuildLivingSpace.valid_record_args(BuildLivingSpace),
|
||||
).data:
|
||||
reachable_event_list_id, reachable_event_list_uu_id = (
|
||||
Event2Occupant.get_event_id_by_build_living_space_id(
|
||||
@@ -317,7 +305,6 @@ class AuthenticationRefreshEventMethods(MethodToEvent):
|
||||
UsersTokens.domain == found_user.domain_name,
|
||||
UsersTokens.user_id == found_user.id,
|
||||
UsersTokens.token_type == "RememberMe",
|
||||
*UsersTokens.valid_record_args(UsersTokens),
|
||||
).data
|
||||
access_dict = {
|
||||
"access_token": access_token,
|
||||
@@ -354,7 +341,7 @@ class AuthenticationChangePasswordEventMethods(MethodToEvent):
|
||||
token_user = get_object_via_access_key(request=request)
|
||||
if token_user.user_type == 1:
|
||||
if found_user := Users.filter_one(
|
||||
Users.uu_id == token_user.uu_id, *Users.valid_record_args(Users)
|
||||
Users.uu_id == token_user.uu_id
|
||||
).data:
|
||||
if found_user.check_password(data.old_password):
|
||||
found_user.set_password(data.new_password)
|
||||
@@ -395,7 +382,7 @@ class AuthenticationCreatePasswordEventMethods(MethodToEvent):
|
||||
status_code=status.HTTP_406_NOT_ACCEPTABLE, detail="Password must match"
|
||||
)
|
||||
if found_user := Users.filter_one(
|
||||
Users.password_token == data.password_token, *Users.valid_record_args(Users)
|
||||
Users.password_token == data.password_token
|
||||
).data:
|
||||
found_user.create_password(password=data.password)
|
||||
found_user.password_token = None
|
||||
@@ -441,7 +428,7 @@ class AuthenticationDisconnectUserEventMethods(MethodToEvent):
|
||||
|
||||
if token_user := get_object_via_access_key(request=request):
|
||||
found_user = Users.filter_one(
|
||||
Users.uu_id == token_user.get("uu_id"), *Users.valid_record_args(Users)
|
||||
Users.uu_id == token_user.get("uu_id")
|
||||
).data
|
||||
if not found_user:
|
||||
return JSONResponse(
|
||||
@@ -458,7 +445,6 @@ class AuthenticationDisconnectUserEventMethods(MethodToEvent):
|
||||
redis_cli.delete(key)
|
||||
selected_user = Users.filter_one(
|
||||
Users.uu_id == token_user.get("uu_id"),
|
||||
*Users.valid_record_args(Users),
|
||||
).data
|
||||
selected_user.remove_refresher_token(
|
||||
domain=data.domain, disconnect=True
|
||||
@@ -510,7 +496,6 @@ class AuthenticationLogoutEventMethods(MethodToEvent):
|
||||
redis_cli.delete(key)
|
||||
selected_user = Users.filter_one(
|
||||
Users.uu_id == token_user.get("uu_id"),
|
||||
*Users.valid_record_args(Users),
|
||||
).data
|
||||
selected_user.remove_refresher_token(domain=data.domain)
|
||||
# UserLogger.log_error(
|
||||
@@ -568,7 +553,7 @@ class AuthenticationRefreshTokenEventMethods(MethodToEvent):
|
||||
status_code=status.HTTP_202_ACCEPTED,
|
||||
)
|
||||
if found_user := Users.filter_one(
|
||||
Users.id == token_refresher.user_id, *Users.valid_record_args(Users)
|
||||
Users.id == token_refresher.user_id,
|
||||
).data:
|
||||
found_user: Users = found_user
|
||||
access_key = save_access_token_to_redis(
|
||||
|
||||
@@ -117,45 +117,37 @@ class AuthenticationSelectEventMethods(MethodToEvent):
|
||||
)
|
||||
if selected_company := Companies.filter_one(
|
||||
Companies.uu_id == data.company_uu_id,
|
||||
*Companies.valid_record_args(Companies),
|
||||
).data:
|
||||
department_ids = [
|
||||
department.id
|
||||
for department in Departments.filter_all(
|
||||
Departments.company_id == selected_company.id,
|
||||
*Departments.valid_record_args(Departments),
|
||||
).data
|
||||
]
|
||||
duties_ids = [
|
||||
duties.id
|
||||
for duties in Duties.filter_all(
|
||||
Duties.company_id == selected_company.id,
|
||||
Duties.department_id.in_(department_ids),
|
||||
*Duties.valid_record_args(Duties),
|
||||
).data
|
||||
]
|
||||
staff_ids = [
|
||||
staff.id
|
||||
for staff in Staff.filter_all(
|
||||
Staff.duties_id.in_(duties_ids),
|
||||
*Staff.valid_record_args(Staff),
|
||||
).data
|
||||
]
|
||||
employee = Employees.filter_one(
|
||||
Employees.people_id == token_dict.person_id,
|
||||
Employees.staff_id.in_(staff_ids),
|
||||
*Employees.valid_record_args(Employees),
|
||||
).data
|
||||
reachable_event_list_id, reachable_event_list_uu_id = (
|
||||
Event2Employee.get_event_id_by_employee_id(employee_id=employee.id)
|
||||
)
|
||||
staff = Staff.filter_one(
|
||||
Staff.id == employee.staff_id,
|
||||
*Staff.valid_record_args(Staff),
|
||||
).data
|
||||
duties = Duties.filter_one(
|
||||
Duties.id == staff.duties_id,
|
||||
*Duties.valid_record_args(Duties),
|
||||
).data
|
||||
department = Departments.filter_one(
|
||||
Departments.id == duties.department_id,
|
||||
@@ -212,27 +204,20 @@ class AuthenticationSelectEventMethods(MethodToEvent):
|
||||
)
|
||||
build = Build.filter_one(
|
||||
Build.id == build_part.build_id,
|
||||
*Build.valid_record_args(Build),
|
||||
).data
|
||||
related_company = RelationshipEmployee2Build.filter_one(
|
||||
RelationshipEmployee2Build.member_id == build.id,
|
||||
*RelationshipEmployee2Build.valid_record_args(
|
||||
RelationshipEmployee2Build
|
||||
),
|
||||
).data
|
||||
company_related = Companies.filter_one(
|
||||
Companies.id == related_company.company_id,
|
||||
*Companies.valid_record_args(Companies),
|
||||
).data
|
||||
responsible_employee = Employees.filter_one(
|
||||
Employees.id == related_company.employee_id,
|
||||
*Employees.valid_record_args(Employees),
|
||||
).data
|
||||
if selected_occupant_type := BuildLivingSpace.filter_one(
|
||||
BuildLivingSpace.occupant_type == occupant_type.id,
|
||||
BuildLivingSpace.person_id == token_dict.person_id,
|
||||
BuildLivingSpace.build_parts_id == build_part.id,
|
||||
*BuildLivingSpace.valid_record_args(BuildLivingSpace),
|
||||
).data:
|
||||
reachable_event_list_id, reachable_event_list_uu_id = (
|
||||
Event2Occupant.get_event_id_by_build_living_space_id(
|
||||
@@ -311,13 +296,11 @@ class AuthenticationRefreshEventMethods(MethodToEvent):
|
||||
if token_user := get_object_via_access_key(request=request):
|
||||
if found_user := Users.filter_one(
|
||||
Users.uu_id == token_user.get("uu_id"),
|
||||
*Users.valid_record_args(Users),
|
||||
).data:
|
||||
user_token = UsersTokens.filter_one(
|
||||
UsersTokens.domain == found_user.domain_name,
|
||||
UsersTokens.user_id == found_user.id,
|
||||
UsersTokens.token_type == "RememberMe",
|
||||
*UsersTokens.valid_record_args(UsersTokens),
|
||||
).data
|
||||
access_dict = {
|
||||
"access_token": access_token,
|
||||
@@ -353,7 +336,6 @@ class AuthenticationChangePasswordEventMethods(MethodToEvent):
|
||||
if token_dict.user_type == 1:
|
||||
if found_user := Users.filter_one(
|
||||
Users.uu_id == token_dict.person_uu_id,
|
||||
*Users.valid_record_args(Users),
|
||||
).data:
|
||||
if found_user.check_password(data.old_password):
|
||||
found_user.set_password(data.new_password)
|
||||
@@ -395,7 +377,6 @@ class AuthenticationCreatePasswordEventMethods(MethodToEvent):
|
||||
)
|
||||
found_user = Users.filter_one(
|
||||
Users.password_token == data.password_token,
|
||||
*Users.valid_record_args(Users),
|
||||
).data
|
||||
if not found_user:
|
||||
return JSONResponse(
|
||||
@@ -442,7 +423,6 @@ class AuthenticationDisconnectUserEventMethods(MethodToEvent):
|
||||
):
|
||||
found_user = Users.filter_one(
|
||||
Users.uu_id == token_dict.person_uu_id,
|
||||
*Users.valid_record_args(Users),
|
||||
).data
|
||||
if not found_user:
|
||||
return JSONResponse(
|
||||
|
||||
@@ -41,16 +41,13 @@ class BuildListEventMethods(MethodToEvent):
|
||||
if isinstance(token_dict, OccupantTokenObject):
|
||||
Build.pre_query = Build.filter_all(
|
||||
Build.id == token_dict.selected_occupant.build_id,
|
||||
*Build.valid_record_args(Build),
|
||||
).query
|
||||
elif isinstance(token_dict, EmployeeTokenObject):
|
||||
Build.pre_query = Build.select_action(
|
||||
employee_id=token_dict.selected_company.employee_id
|
||||
)
|
||||
Build.filter_attr = list_options
|
||||
records = Build.filter_all(
|
||||
*Build.valid_record_args(Build),
|
||||
)
|
||||
records = Build.filter_all()
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
message="Building Records are listed",
|
||||
@@ -187,7 +184,6 @@ class BuildUpdateEventMethods(MethodToEvent):
|
||||
)
|
||||
if Build.filter_all(
|
||||
Build.person_id == token_dict.person_id,
|
||||
*Build.valid_record_args(Build),
|
||||
).data:
|
||||
Build.pre_query = None
|
||||
updated_build = Build.update_action(
|
||||
@@ -219,7 +215,6 @@ class BuildPatchEventMethods(MethodToEvent):
|
||||
def build_patch(cls, build_uu_id: str, data: PatchRecord, token_dict):
|
||||
find_one_build = Build.filter_one(
|
||||
Build.uu_id==build_uu_id,
|
||||
*Build.valid_record_args(Build)
|
||||
)
|
||||
access_authorized_build = Build.select_action(
|
||||
employee_id=token_dict.selected_company.employee_id,
|
||||
|
||||
@@ -32,11 +32,9 @@ class BuildAreaListEventMethods(MethodToEvent):
|
||||
if isinstance(token_dict, OccupantTokenObject):
|
||||
build_ids = Build.filter_all(
|
||||
Build.id == token_dict.selected_occupant.build_id,
|
||||
*Build.valid_record_args(Build),
|
||||
).data
|
||||
BuildArea.pre_query = BuildArea.filter_all(
|
||||
BuildArea.build_id.in_([build.id for build in build_ids]),
|
||||
*BuildArea.valid_record_args(BuildArea),
|
||||
).query
|
||||
elif isinstance(token_dict, EmployeeTokenObject):
|
||||
build_ids = Build.select_action(
|
||||
@@ -44,12 +42,9 @@ class BuildAreaListEventMethods(MethodToEvent):
|
||||
)
|
||||
BuildArea.pre_query = BuildArea.filter_all(
|
||||
BuildArea.build_id.in_([build.id for build in build_ids]),
|
||||
*BuildArea.valid_record_args(BuildArea),
|
||||
).query
|
||||
BuildArea.filter_attr = list_options
|
||||
records = BuildArea.filter_all(
|
||||
*BuildArea.valid_record_args(BuildArea),
|
||||
)
|
||||
records = BuildArea.filter_all()
|
||||
return AlchemyJsonResponse(
|
||||
completed=True, message="List of Build Area", result=records
|
||||
)
|
||||
|
||||
@@ -38,9 +38,7 @@ class BuildingBuildPartsListEventMethods(MethodToEvent):
|
||||
BuildParts.build_id.in_(build_list_ids),
|
||||
).query
|
||||
BuildParts.filter_attr = list_options
|
||||
records = BuildParts.filter_all(
|
||||
*BuildParts.valid_record_args(BuildParts),
|
||||
)
|
||||
records = BuildParts.filter_all()
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
message="Building Parts Records are listed",
|
||||
@@ -111,7 +109,6 @@ class BuildingBuildPartsPatchEventMethods(MethodToEvent):
|
||||
def building_build_parts_patch(cls, data, token_dict):
|
||||
find_one_build = BuildParts.filter_one(
|
||||
BuildParts.uu_id == data.uu_id,
|
||||
*BuildParts.valid_record_args(BuildParts),
|
||||
).data
|
||||
access_authorized_build = BuildParts.select_action(
|
||||
duty_id=token_dict.selected_company.duty_id,
|
||||
|
||||
@@ -33,11 +33,9 @@ class BuildSitesListEventMethods(MethodToEvent):
|
||||
if isinstance(token_dict, OccupantTokenObject):
|
||||
occupants_build = Build.filter_one(
|
||||
Build.id == token_dict.selected_occupant.build_id,
|
||||
*Build.valid_record_args(Build),
|
||||
).data
|
||||
BuildSites.pre_query = BuildSites.filter_all(
|
||||
BuildSites.address_id == occupants_build.address_id,
|
||||
*BuildSites.valid_record_args(BuildSites),
|
||||
).query
|
||||
elif isinstance(token_dict, EmployeeTokenObject):
|
||||
employees_build = Build.select_action(
|
||||
@@ -53,12 +51,9 @@ class BuildSitesListEventMethods(MethodToEvent):
|
||||
)
|
||||
BuildSites.pre_query = BuildSites.filter_all(
|
||||
BuildSites.address_id.in_(employees_build_list)
|
||||
*BuildSites.valid_record_args(BuildSites),
|
||||
).query
|
||||
BuildSites.filter_attr = list_options
|
||||
records = BuildSites.filter_all(
|
||||
*BuildSites.valid_record_args(BuildSites),
|
||||
)
|
||||
records = BuildSites.filter_all()
|
||||
return AlchemyJsonResponse(
|
||||
completed=True, message="Update Build record", result=records
|
||||
)
|
||||
|
||||
@@ -25,9 +25,7 @@ class BuildTypesListEventMethods(MethodToEvent):
|
||||
from fastapi.exceptions import HTTPException
|
||||
if isinstance(token_dict, EmployeeTokenObject):
|
||||
BuildTypes.filter_attr = list_options
|
||||
results = BuildTypes.filter_all(
|
||||
*BuildTypes.valid_record_args(BuildTypes)
|
||||
)
|
||||
results = BuildTypes.filter_all()
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
result=results,
|
||||
|
||||
@@ -36,7 +36,6 @@ class BuildingLivingSpacesPartsListEventMethods(MethodToEvent):
|
||||
if isinstance(token_dict, OccupantTokenObject):
|
||||
occupants_build_id = Build.filter_one(
|
||||
Build.id == token_dict.selected_occupant.build_id,
|
||||
*Build.valid_record_args(Build),
|
||||
).data
|
||||
if not occupants_build_id:
|
||||
Build.raise_http_exception(
|
||||
@@ -47,7 +46,6 @@ class BuildingLivingSpacesPartsListEventMethods(MethodToEvent):
|
||||
)
|
||||
occupants_build_parts = BuildParts.filter_all(
|
||||
BuildParts.build_id.in_(occupants_build_id.id),
|
||||
*BuildParts.valid_record_args(BuildParts),
|
||||
).data
|
||||
if not occupants_build_parts:
|
||||
Build.raise_http_exception(
|
||||
@@ -60,12 +58,9 @@ class BuildingLivingSpacesPartsListEventMethods(MethodToEvent):
|
||||
BuildLivingSpace.build_parts_id.in_(
|
||||
[build_part.id for build_part in occupants_build_parts]
|
||||
),
|
||||
*BuildLivingSpace.valid_record_args(BuildLivingSpace),
|
||||
).query
|
||||
BuildLivingSpace.filter_attr = list_options
|
||||
records = BuildLivingSpace.filter_all(
|
||||
*BuildLivingSpace.valid_record_args(BuildLivingSpace),
|
||||
)
|
||||
records = BuildLivingSpace.filter_all()
|
||||
elif isinstance(token_dict, EmployeeTokenObject):
|
||||
build_id_list_query = Build.select_action(
|
||||
employee_id=token_dict.selected_company.employee_id
|
||||
@@ -81,7 +76,6 @@ class BuildingLivingSpacesPartsListEventMethods(MethodToEvent):
|
||||
BuildParts.build_id.in_(
|
||||
[build.id for build in build_id_list_query.all()]
|
||||
),
|
||||
*BuildLivingSpace.valid_record_args(BuildLivingSpace),
|
||||
).data
|
||||
if not build_part_id_list_query:
|
||||
Build.raise_http_exception(
|
||||
@@ -94,12 +88,9 @@ class BuildingLivingSpacesPartsListEventMethods(MethodToEvent):
|
||||
BuildLivingSpace.build_parts_id.in_(
|
||||
[build_part.id for build_part in build_part_id_list_query]
|
||||
),
|
||||
*BuildLivingSpace.valid_record_args(BuildLivingSpace),
|
||||
).query
|
||||
BuildLivingSpace.filter_attr = list_options
|
||||
records = BuildLivingSpace.filter_all(
|
||||
*BuildLivingSpace.valid_record_args(BuildLivingSpace),
|
||||
)
|
||||
records = BuildLivingSpace.filter_all()
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
message="Building Living Spaces are listed successfully",
|
||||
@@ -122,14 +113,13 @@ class BuildingLivingSpacesPartsCreateEventMethods(MethodToEvent):
|
||||
):
|
||||
from api_library.date_time_actions.date_functions import system_arrow
|
||||
|
||||
data_dict = data.dump()
|
||||
data_dict = data.excluded_dump()
|
||||
build_id_list_query = Build.select_action(
|
||||
employee_id=token_dict.selected_company.employee_id
|
||||
)
|
||||
build_part = BuildParts.filter_one(
|
||||
BuildParts.uu_id == data.build_parts_uu_id,
|
||||
BuildParts.build_id.in_([build.id for build in build_id_list_query.all()]),
|
||||
*BuildLivingSpace.valid_record_args(BuildLivingSpace),
|
||||
).data
|
||||
if not build_part:
|
||||
BuildLivingSpace.raise_http_exception(
|
||||
@@ -141,8 +131,7 @@ class BuildingLivingSpacesPartsCreateEventMethods(MethodToEvent):
|
||||
},
|
||||
)
|
||||
life_person = People.filter_one(
|
||||
People.uu_id == data.person_uu_id or "",
|
||||
*People.valid_record_args(People),
|
||||
People.uu_id == data.person_uu_id,
|
||||
).data
|
||||
if not life_person:
|
||||
BuildLivingSpace.raise_http_exception(
|
||||
@@ -175,7 +164,6 @@ class BuildingLivingSpacesPartsCreateEventMethods(MethodToEvent):
|
||||
BuildLivingSpace.build_parts_id == build_part.id,
|
||||
BuildLivingSpace.person_id == life_person.id,
|
||||
BuildLivingSpace.occupant_type == occupant_type.id,
|
||||
*BuildLivingSpace.valid_record_args(BuildLivingSpace),
|
||||
select_args=[BuildLivingSpace.id],
|
||||
order_by=BuildLivingSpace.expiry_starts.desc(),
|
||||
limit=1,
|
||||
@@ -183,27 +171,30 @@ class BuildingLivingSpacesPartsCreateEventMethods(MethodToEvent):
|
||||
|
||||
last_living_space = BuildLivingSpace.filter_one(
|
||||
BuildLivingSpace.id == living_space_id[0] if living_space_id else None,
|
||||
*BuildLivingSpace.valid_record_args(BuildLivingSpace),
|
||||
)
|
||||
|
||||
data_dict["expiry_starts"] = str(system_arrow.now())
|
||||
).data
|
||||
created_living_space = BuildLivingSpace.create_action(
|
||||
data=data_dict, token_dict=token_dict
|
||||
)
|
||||
|
||||
if last_living_space:
|
||||
if last_living_space.expiry_ends > str(system_arrow.now()):
|
||||
last_living_space.expiry_ends = str(system_arrow.shift(minutes=-10))
|
||||
dt = system_arrow.get(last_living_space.expiry_ends)
|
||||
if dt > system_arrow.now():
|
||||
minute_df = int(dt.time().minute) - 10
|
||||
last_living_space.expiry_ends = str(dt.replace(
|
||||
minute=60 - abs(minute_df) if minute_df < 0 else minute_df
|
||||
))
|
||||
last_living_space.save()
|
||||
|
||||
user_module = Modules.filter_one(
|
||||
Modules.module_code == "USR-PUB", system=True
|
||||
).data
|
||||
created_living_space.save()
|
||||
created_living_space.update(is_confirmed=True)
|
||||
created_living_space.save()
|
||||
ModulesBindOccupantEventMethods.modules_bind_occupant_system(
|
||||
build_living_space_id=created_living_space.id,
|
||||
modules_id=user_module.id,
|
||||
)
|
||||
created_living_space.save()
|
||||
return created_living_space
|
||||
|
||||
|
||||
@@ -233,7 +224,6 @@ class BuildingLivingSpacesPartsUpdateEventMethods(MethodToEvent):
|
||||
BuildParts.build_id.in_(
|
||||
[build.id for build in build_id_list_query.all()]
|
||||
),
|
||||
*BuildParts.valid_record_args(BuildParts),
|
||||
).data
|
||||
if not build_part:
|
||||
BuildLivingSpace.raise_http_exception(
|
||||
@@ -266,7 +256,6 @@ class BuildingLivingSpacesPartsUpdateEventMethods(MethodToEvent):
|
||||
|
||||
last_living_space = BuildLivingSpace.filter_one(
|
||||
BuildLivingSpace.id == living_space_id if living_space_id else None,
|
||||
*BuildLivingSpace.valid_record_args(BuildLivingSpace),
|
||||
).data
|
||||
|
||||
data_dict["expiry_starts"] = str(system_arrow.now())
|
||||
|
||||
@@ -42,9 +42,7 @@ class CompanyListEventMethods(MethodToEvent):
|
||||
Companies.id == token_dict.selected_occupant.responsible_company_id
|
||||
).query
|
||||
Companies.filter_attr = list_options
|
||||
records = Companies.filter_all(
|
||||
*Companies.valid_record_args(Companies)
|
||||
)
|
||||
records = Companies.filter_all()
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
message="Building Living Spaces are listed successfully",
|
||||
@@ -97,7 +95,6 @@ class CompanyUpdateEventMethods(MethodToEvent):
|
||||
)
|
||||
find_one_company = Companies.filter_one(
|
||||
Companies.uu_id == company_uu_id,
|
||||
Companies.valid_record_args(Companies),
|
||||
).data
|
||||
if not find_one_company:
|
||||
return JSONResponse(
|
||||
@@ -133,7 +130,6 @@ class CompanyPatchEventMethods(MethodToEvent):
|
||||
):
|
||||
find_one_company = Companies.filter_one(
|
||||
Companies.uu_id==company_uu_id,
|
||||
*Companies.valid_record_args(Companies)
|
||||
).data
|
||||
access_authorized_company = Companies.select_action(
|
||||
duty_id_list=[
|
||||
|
||||
@@ -32,7 +32,6 @@ class DepartmentListEventMethods(MethodToEvent):
|
||||
Departments.filter_attr = list_options
|
||||
records = Departments.filter_all(
|
||||
Departments.company_id == token_dict.selected_company.company_id,
|
||||
*Departments.valid_record_args(Departments)
|
||||
)
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
|
||||
@@ -67,7 +67,6 @@ class DutiesGetByUUIDEventMethods(MethodToEvent):
|
||||
records = Duties.filter_all(
|
||||
Duties.duties_id == duty.id,
|
||||
Duties.company_id == token_dict.selected_company.company_id,
|
||||
*Duties.valid_record_args(Duties)
|
||||
)
|
||||
if not records.data:
|
||||
return JSONResponse(
|
||||
|
||||
@@ -31,12 +31,10 @@ class EmployeeListEventMethods(MethodToEvent):
|
||||
):
|
||||
employees_staff = Staff.filter_all(
|
||||
Staff.duties_id.in_(token_dict.duty_id_list),
|
||||
*Staff.valid_record_args(Staff),
|
||||
).data
|
||||
Employees.filter_attr = list_options
|
||||
records = Employees.filter_all(
|
||||
Employees.staff_id.in_([staff.id for staff in employees_staff]),
|
||||
*Employees.valid_record_args(Employees),
|
||||
)
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
@@ -60,11 +58,9 @@ class EmployeeCreateEventMethods(MethodToEvent):
|
||||
):
|
||||
person = People.filter_one(
|
||||
People.uu_id == data.people_uu_id,
|
||||
*People.valid_record_args(People),
|
||||
).data
|
||||
staff = Staff.filter_one(
|
||||
Staff.uu_id == data.staff_uu_id,
|
||||
*Staff.valid_record_args(Staff),
|
||||
).data
|
||||
if not staff:
|
||||
return JSONResponse(
|
||||
@@ -108,7 +104,6 @@ class EmployeeUpdateEventMethods(MethodToEvent):
|
||||
):
|
||||
find_one_employee = Employees.filter_one(
|
||||
Employees.uu_id == employee_uu_id,
|
||||
*Employees.valid_record_args(Employees),
|
||||
).data
|
||||
access_authorized_employee = Employees.select_action(
|
||||
employee_id=getattr(token_dict, "employee_id", 5),
|
||||
@@ -199,10 +194,9 @@ class Employee2PeopleEmployEventMethods(MethodToEvent):
|
||||
):
|
||||
selected_staff = Staff.filter_one(
|
||||
Staff.uu_id == data.staff_uu_id,
|
||||
*Staff.valid_record_args(Staff),
|
||||
).data
|
||||
selected_people = People.filter_one(
|
||||
People.uu_id == data.people_uu_id, *People.valid_record_args
|
||||
People.uu_id == data.people_uu_id
|
||||
).data
|
||||
if not selected_staff:
|
||||
raise HTTPException(
|
||||
@@ -217,7 +211,6 @@ class Employee2PeopleEmployEventMethods(MethodToEvent):
|
||||
|
||||
find_one_employee = Employees.filter_all(
|
||||
Employees.staff_id == selected_staff.id,
|
||||
*Employees.valid_record_args(Employees),
|
||||
).data
|
||||
|
||||
staff_name_upper = str(selected_staff.staff_name).upper()
|
||||
@@ -265,7 +258,6 @@ class Employee2PeopleFireEventMethods(MethodToEvent):
|
||||
):
|
||||
selected_people = People.filter_one(
|
||||
People.uu_id == data.people_uu_id,
|
||||
*People.valid_record_args(People),
|
||||
).data
|
||||
if not selected_people:
|
||||
raise HTTPException(
|
||||
@@ -275,7 +267,6 @@ class Employee2PeopleFireEventMethods(MethodToEvent):
|
||||
|
||||
find_one_employee: Employees = Employees.filter_one(
|
||||
Employees.people_id == selected_people.id,
|
||||
*Employees.valid_record_args(Employees),
|
||||
).data
|
||||
if not find_one_employee:
|
||||
return JSONResponse(
|
||||
|
||||
@@ -25,9 +25,7 @@ class StaffListEventMethods(MethodToEvent):
|
||||
@classmethod
|
||||
def staff_list(cls, list_options: ListOptions, token_dict: EmployeeTokenObject):
|
||||
Staff.filter_attr = list_options
|
||||
records = Staff.filter_all(
|
||||
*Staff.valid_record_args(Staff)
|
||||
)
|
||||
records = Staff.filter_all()
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
message="Staff are listed successfully",
|
||||
@@ -46,7 +44,6 @@ class StaffCreateEventMethods(MethodToEvent):
|
||||
data_dict = data.excluded_dump()
|
||||
duties = Duties.filter_one(
|
||||
Duties.uu_id == data.duties_uu_id,
|
||||
*Duties.valid_record_args(Duties),
|
||||
).data
|
||||
if not duties:
|
||||
raise HTTPException(
|
||||
@@ -77,10 +74,10 @@ class StaffGetByUUIDEventMethods(MethodToEvent):
|
||||
def staff_get_by_uu_id(cls, data: SelectStaff, token_dict: EmployeeTokenObject):
|
||||
if data.duties_uu_id:
|
||||
duties_id = Duties.filter_one(
|
||||
Duties.uu_id == data.duties_uu_id, *Duties.valid_record_args(Duties)
|
||||
Duties.uu_id == data.duties_uu_id,
|
||||
).data
|
||||
selected_staffs = Staff.filter_all(
|
||||
Staff.duties_id == duties_id.id, *Staff.valid_record_args(Staff)
|
||||
Staff.duties_id == duties_id.id
|
||||
)
|
||||
return JSONResponse(
|
||||
content={
|
||||
|
||||
@@ -49,13 +49,11 @@ class DecisionBookListEventMethods(MethodToEvent):
|
||||
BuildDecisionBook.filter_attr = list_options
|
||||
records = BuildDecisionBook.filter_all(
|
||||
BuildDecisionBook.build_id.in_([build.id for build in build_id_list]),
|
||||
*BuildDecisionBook.valid_record_args(BuildDecisionBook),
|
||||
).data
|
||||
elif isinstance(token_dict, OccupantTokenObject):
|
||||
BuildDecisionBook.filter_attr = list_options
|
||||
records = BuildDecisionBook.filter_all(
|
||||
BuildDecisionBook.build_id == token_dict.selected_occupant.build_id,
|
||||
*BuildDecisionBook.valid_record_args(BuildDecisionBook),
|
||||
).data
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
@@ -84,7 +82,6 @@ class DecisionBookCreateEventMethods(MethodToEvent):
|
||||
)
|
||||
build = Build.filter_one(
|
||||
Build.uu_id == data.build_uu_id,
|
||||
*Build.valid_record_args(Build),
|
||||
).data
|
||||
if not build:
|
||||
raise HTTPException(
|
||||
@@ -101,7 +98,6 @@ class DecisionBookCreateEventMethods(MethodToEvent):
|
||||
)
|
||||
company = Companies.filter_one(
|
||||
Companies.uu_id == data.resp_company_uu_id,
|
||||
*Companies.valid_record_args(Companies),
|
||||
).data
|
||||
if not company:
|
||||
raise HTTPException(
|
||||
@@ -143,11 +139,9 @@ class DecisionBookCreateEventMethods(MethodToEvent):
|
||||
|
||||
occupant_build = Build.filter_one(
|
||||
Build.id == token_dict.selected_occupant.build_id,
|
||||
*Build.valid_record_args(Build),
|
||||
).data
|
||||
occupant_company = Companies.filter_one(
|
||||
Companies.id == token_dict.selected_occupant.responsible_company_id,
|
||||
*Companies.valid_record_args(Companies),
|
||||
).data
|
||||
data_dict["build_id"] = occupant_build.id
|
||||
data_dict["build_uu_id"] = str(occupant_build.uu_id)
|
||||
|
||||
@@ -44,7 +44,6 @@ class DecisionBookDecisionBookItemsListEventMethods(MethodToEvent):
|
||||
):
|
||||
decision_book = BuildDecisionBook.filter_one(
|
||||
BuildDecisionBook.uu_id == data.build_decision_book_uu_id,
|
||||
*BuildDecisionBook.valid_record_args(BuildDecisionBook),
|
||||
).data
|
||||
if not decision_book:
|
||||
raise HTTPException(
|
||||
@@ -105,7 +104,6 @@ class DecisionBookDecisionBookItemsListEventMethods(MethodToEvent):
|
||||
# )
|
||||
# BuildDecisionBookItems.filter_attr = list_options
|
||||
# records = BuildDecisionBookItems.filter_all(
|
||||
# *BuildDecisionBookItems.valid_record_args(BuildDecisionBookItems)
|
||||
# )
|
||||
# return return_json_response_from_alchemy(response=records, pagination=list_options)
|
||||
return
|
||||
@@ -178,7 +176,6 @@ class DecisionBookDecisionBookItemsCreateEventMethods(MethodToEvent):
|
||||
build_parts_list = BuildParts.filter_all(
|
||||
BuildParts.human_livable == True,
|
||||
BuildParts.build_id == build_id,
|
||||
*BuildParts.valid_record_args(BuildParts)
|
||||
)
|
||||
book_payment_dict = dict(
|
||||
payment_plan_time_periods=str(data_info_type.key),
|
||||
@@ -236,7 +233,6 @@ class DecisionBookDecisionBookItemsCreateEventMethods(MethodToEvent):
|
||||
management_room = BuildParts.filter_one(
|
||||
BuildParts.build_id == build_id,
|
||||
BuildParts.part_no == 0,
|
||||
*BuildParts.valid_record_args(BuildParts),
|
||||
).data
|
||||
occupant_man = OccupantTypes.filter_by_one(
|
||||
occupant_code="MT-VPR", occupant_category_type="MT"
|
||||
@@ -244,7 +240,6 @@ class DecisionBookDecisionBookItemsCreateEventMethods(MethodToEvent):
|
||||
manager_living_space = BuildLivingSpace.filter_one(
|
||||
BuildLivingSpace.build_parts_id == management_room.id,
|
||||
BuildLivingSpace.occupant_type == occupant_man.id,
|
||||
*BuildLivingSpace.valid_record_args(BuildLivingSpace),
|
||||
).data
|
||||
if not manager_living_space.data:
|
||||
raise HTTPException(
|
||||
@@ -325,11 +320,9 @@ class DecisionBookDecisionBookItemsCreateEventMethods(MethodToEvent):
|
||||
|
||||
decision_book_person = BuildDecisionBookPerson.filter_one(
|
||||
BuildDecisionBookPerson.token == data.token,
|
||||
*BuildDecisionBookPerson.valid_record_args(BuildDecisionBookPerson),
|
||||
).data
|
||||
decision_book = BuildDecisionBook.filter_one(
|
||||
BuildDecisionBook.id == decision_book_person.build_decision_book_id,
|
||||
*BuildDecisionBook.valid_record_args(BuildDecisionBook),
|
||||
).data
|
||||
BuildDecisionBookItems.check_meeting_is_valid_to_start_add_attendance(
|
||||
decision_book=decision_book,
|
||||
@@ -337,7 +330,6 @@ class DecisionBookDecisionBookItemsCreateEventMethods(MethodToEvent):
|
||||
)
|
||||
book_items = BuildDecisionBookItems.filter_all(
|
||||
BuildDecisionBookItems.build_decision_book_id == decision_book.id,
|
||||
*BuildDecisionBookItems.valid_record_args(BuildDecisionBookItems)
|
||||
)
|
||||
|
||||
data_dict["item_order"] = int(book_items.count) + 1
|
||||
|
||||
@@ -36,12 +36,10 @@ class DecisionBookDecisionBookItemsDebitsListEventMethods(MethodToEvent):
|
||||
):
|
||||
BuildDecisionBookItems.pre_query = BuildDecisionBookItems.filter_all(
|
||||
BuildDecisionBookItems.decision_book_id == decision_book_id,
|
||||
*BuildDecisionBookItems.valid_record_args(BuildDecisionBookItems)
|
||||
).query
|
||||
BuildDecisionBookItems.filter_attr = None
|
||||
records = BuildDecisionBookItems.filter_all(
|
||||
BuildDecisionBookItems.decision_book_id == decision_book_id,
|
||||
*BuildDecisionBookItems.valid_record_args(BuildDecisionBookItems)
|
||||
)
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
@@ -93,12 +91,10 @@ class DecisionBookDecisionBookItemsDebitsCreateEventMethods(MethodToEvent):
|
||||
decision_book_items_debits["deleted_by"] = None
|
||||
BuildDecisionBookItems.pre_query = BuildDecisionBookItems.filter_all(
|
||||
BuildDecisionBookItems.decision_book_id == decision_book_id,
|
||||
*BuildDecisionBookItems.valid_record_args(BuildDecisionBookItems)
|
||||
).query
|
||||
BuildDecisionBookItems.filter_attr = None
|
||||
records = BuildDecisionBookItems.filter_all(
|
||||
BuildDecisionBookItems.decision_book_id == decision_book_id,
|
||||
*BuildDecisionBookItems.valid_record_args(BuildDecisionBookItems)
|
||||
)
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
|
||||
@@ -63,7 +63,6 @@ class DecisionBookPersonAddEventMethods(MethodToEvent):
|
||||
elif isinstance(token_dict, OccupantTokenObject):
|
||||
decision_book = BuildDecisionBook.filter_one(
|
||||
BuildDecisionBook.uu_id == data.build_decision_book_uu_id,
|
||||
*BuildDecisionBook.valid_record_args(BuildDecisionBook),
|
||||
).data
|
||||
if not decision_book:
|
||||
raise HTTPException(
|
||||
@@ -281,7 +280,6 @@ class DecisionBookPersonAssignOccupantEventMethods(MethodToEvent):
|
||||
|
||||
build_parts_of_token = BuildParts.filter_all(
|
||||
BuildParts.build_id == token_dict.selected_occupant.build_id,
|
||||
*BuildParts.valid_record_args(BuildParts),
|
||||
).data
|
||||
selected_living_space = BuildLivingSpace.filter_one(
|
||||
BuildLivingSpace.uu_id == data.build_living_space_uu_id,
|
||||
|
||||
@@ -137,7 +137,6 @@ class BuildDecisionBookInvitationsCreateEventMethods(MethodToEvent):
|
||||
# Get all the parts of the building that is occupant in token
|
||||
build_parts = BuildParts.filter_all(
|
||||
BuildParts.build_id == occupant_building.id,
|
||||
*BuildParts.valid_record_args(BuildParts),
|
||||
)
|
||||
|
||||
# Get all build living spaces that is found in building with distinct person id
|
||||
@@ -188,7 +187,6 @@ class BuildDecisionBookInvitationsCreateEventMethods(MethodToEvent):
|
||||
BuildDecisionBookPerson.invite_id == book_invitation.id,
|
||||
BuildDecisionBookPerson.build_living_space_id
|
||||
== build_living_spaces_user.id,
|
||||
*BuildDecisionBookPerson.valid_record_args(BuildDecisionBookPerson),
|
||||
).data:
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_400_BAD_REQUEST,
|
||||
@@ -219,7 +217,6 @@ class BuildDecisionBookInvitationsCreateEventMethods(MethodToEvent):
|
||||
|
||||
manager_living_spaces = BuildLivingSpace.filter_all(
|
||||
BuildLivingSpace.person_id == token_dict.person_id,
|
||||
*BuildLivingSpace.valid_record_args(BuildLivingSpace),
|
||||
)
|
||||
manager_people = BuildDecisionBookPerson.filter_all(
|
||||
BuildDecisionBookPerson.invite_id == book_invitation.id,
|
||||
@@ -229,14 +226,11 @@ class BuildDecisionBookInvitationsCreateEventMethods(MethodToEvent):
|
||||
for manager_living_space in manager_living_spaces.data
|
||||
]
|
||||
),
|
||||
*BuildLivingSpace.valid_record_args(BuildLivingSpace),
|
||||
)
|
||||
manager_people_occupants = BuildDecisionBookPersonOccupants.filter_all(
|
||||
BuildDecisionBookPersonOccupants.build_decision_book_person_id
|
||||
== manager_people.get(1).id,
|
||||
*BuildDecisionBookPersonOccupants.valid_record_args(
|
||||
BuildDecisionBookPersonOccupants
|
||||
),
|
||||
|
||||
)
|
||||
manager_people_occupants.query.delete()
|
||||
manager_people.query.delete()
|
||||
|
||||
@@ -66,7 +66,6 @@ class EventBindOccupantEventMethods(MethodToEvent):
|
||||
|
||||
events_to_add_to_occupant = Events.filter_all(
|
||||
Events.uu_id.in_(list(data.event_uu_id_list)),
|
||||
*Events.valid_record_args(Events),
|
||||
)
|
||||
if not events_to_add_to_occupant.data:
|
||||
return JSONResponse(
|
||||
|
||||
@@ -30,19 +30,20 @@ class ModulesBindOccupantEventMethods(MethodToEvent):
|
||||
):
|
||||
|
||||
living_space = BuildLivingSpace.filter_one(
|
||||
Modules.id == build_living_space_id,
|
||||
Modules.active == True,
|
||||
BuildLivingSpace.id == build_living_space_id,
|
||||
).data
|
||||
modules = Modules.filter_one(
|
||||
Modules.id == modules_id, Modules.active == True
|
||||
Modules.id == modules_id
|
||||
).data
|
||||
|
||||
if not living_space or not modules:
|
||||
print(f"Giving living Space or Modules: {modules.module_name} not found")
|
||||
return
|
||||
service_build_dict = dict(build_living_space_id=living_space.id)
|
||||
service_build_dict["expires_at"] = str(
|
||||
system_arrow.get(living_space.expiry_ends)
|
||||
)
|
||||
if not expires_at:
|
||||
if expires_at:
|
||||
service_build_dict["expires_at"] = str(system_arrow.get(expires_at))
|
||||
else:
|
||||
service_build_dict["expires_at"] = str(system_arrow.get(living_space.expiry_ends))
|
||||
|
||||
for service in modules.retrieve_services():
|
||||
ServiceBindOccupantEventMethods.bind_services_occupant_system(
|
||||
|
||||
@@ -35,22 +35,19 @@ class ServiceBindOccupantEventMethods(MethodToEvent):
|
||||
cls, build_living_space_id: int, service_id: int, expires_at: str = None
|
||||
):
|
||||
from sqlalchemy.dialects.postgresql import insert
|
||||
|
||||
living_space = BuildLivingSpace.filter_one(
|
||||
BuildLivingSpace.id == build_living_space_id,
|
||||
*BuildLivingSpace.valid_record_args(BuildLivingSpace),
|
||||
).data
|
||||
service = Services.filter_one(
|
||||
Services.id == service_id, *Services.valid_record_args(Services)
|
||||
).data
|
||||
service = Services.filter_one(Services.id == service_id).data
|
||||
add_events_list = Service2Events.filter_all(
|
||||
Service2Events.service_id == service.id,
|
||||
*Service2Events.valid_record_args(Service2Events),
|
||||
).data
|
||||
if not living_space:
|
||||
print("Living Space is not valid. Service is not binded")
|
||||
return
|
||||
if not add_events_list:
|
||||
raise Exception(
|
||||
"Service has no events registered. Please contact with your manager"
|
||||
)
|
||||
print(f"Service has no events registered. Please contact with your manager")
|
||||
return
|
||||
|
||||
event_ids_list = [
|
||||
{
|
||||
@@ -131,7 +128,6 @@ class ServiceBindOccupantEventMethods(MethodToEvent):
|
||||
|
||||
service_events = Service2Events.filter_all(
|
||||
Service2Events.service_id == service.id,
|
||||
Service2Events.valid_record_args(Service2Events),
|
||||
).data
|
||||
if not service_events:
|
||||
raise HTTPException(
|
||||
@@ -143,7 +139,6 @@ class ServiceBindOccupantEventMethods(MethodToEvent):
|
||||
BuildLivingSpace.build_parts_id == occupants_build_part.id,
|
||||
BuildLivingSpace.occupant_types_id == occupant_occupant_type.id,
|
||||
BuildLivingSpace.person_id == token_dict.person_id,
|
||||
*BuildLivingSpace.valid_record_args(BuildLivingSpace),
|
||||
).data
|
||||
if not living_space:
|
||||
return JSONResponse(
|
||||
@@ -197,7 +192,6 @@ class ServiceBindEmployeeEventMethods(MethodToEvent):
|
||||
).data
|
||||
service_events = Service2Events.filter_all(
|
||||
Service2Events.service_id == service.id,
|
||||
*Service2Events.valid_record_args(Service2Events),
|
||||
).data
|
||||
if not service_events:
|
||||
raise Exception(
|
||||
@@ -271,7 +265,6 @@ class ServiceBindEmployeeEventMethods(MethodToEvent):
|
||||
|
||||
service_events = Service2Events.filter_all(
|
||||
Service2Events.service_id == service.id,
|
||||
*Service2Events.valid_record_args(Service2Events),
|
||||
).data
|
||||
if not service_events:
|
||||
raise HTTPException(
|
||||
|
||||
@@ -37,9 +37,7 @@ class EventsListEventMethods(MethodToEvent):
|
||||
token_dict: Union[EmployeeTokenObject, OccupantTokenObject],
|
||||
):
|
||||
Events.filter_attr = list_options
|
||||
records = Events.filter_all(
|
||||
*Events.valid_record_args(Events)
|
||||
)
|
||||
records = Events.filter_all()
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
message="DecisionBook are listed successfully",
|
||||
@@ -143,7 +141,6 @@ class EventsBindEventToOccupantMethods(MethodToEvent):
|
||||
def bind_events_employee(cls, data: RegisterEvents2Employee, token_dict):
|
||||
events = Events.filter_all(
|
||||
Events.uu_id.in_(data.event_id),
|
||||
*Events.valid_record_args(Events),
|
||||
).data
|
||||
if not events:
|
||||
raise HTTPException(
|
||||
@@ -153,16 +150,13 @@ class EventsBindEventToOccupantMethods(MethodToEvent):
|
||||
employee_is_not_valid = False
|
||||
employee = Employees.filter_one(
|
||||
Employees.employee_uu_id == data.employee_uu_id,
|
||||
*Employees.valid_record_args(Employees),
|
||||
).data
|
||||
if employee:
|
||||
staff = Staff.filter_one(
|
||||
Staff.id == employee.staff_id,
|
||||
*Staff.valid_record_args(Staff),
|
||||
).data
|
||||
duties = Duties.filter_one(
|
||||
Duties.id == staff.duties_id,
|
||||
*Duties.valid_record_args(Duties),
|
||||
).data
|
||||
if duties.company_id not in token_dict.companies_id_list:
|
||||
employee_is_not_valid = True
|
||||
@@ -196,7 +190,6 @@ class EventsBindEventToEmployeeMethods(MethodToEvent):
|
||||
def bind_events_occupant(cls, data: RegisterEvents2Occupant, token_dict):
|
||||
events = Events.filter_all(
|
||||
Events.uu_id.in_(data.event_id),
|
||||
*Events.valid_record_args(Events),
|
||||
).data
|
||||
if not events:
|
||||
raise HTTPException(
|
||||
@@ -205,7 +198,6 @@ class EventsBindEventToEmployeeMethods(MethodToEvent):
|
||||
)
|
||||
occupant = BuildLivingSpace.filter_one(
|
||||
BuildLivingSpace.uu_id == data.build_living_space_uu_id,
|
||||
*BuildLivingSpace.valid_record_args(BuildLivingSpace),
|
||||
).data
|
||||
if not occupant:
|
||||
raise HTTPException(
|
||||
|
||||
@@ -39,9 +39,7 @@ class PeopleListEventMethods(MethodToEvent):
|
||||
],
|
||||
)
|
||||
People.filter_attr = list_options
|
||||
records = People.filter_all(
|
||||
*People.valid_record_args(People),
|
||||
)
|
||||
records = People.filter_all()
|
||||
elif isinstance(token_dict, OccupantTokenObject):
|
||||
related_users = Users.filter_all(
|
||||
Users.related_company
|
||||
@@ -49,12 +47,9 @@ class PeopleListEventMethods(MethodToEvent):
|
||||
).data
|
||||
People.pre_query = People.filter_all(
|
||||
People.id.in_([user.person_id for user in related_users]),
|
||||
*People.valid_record_args(People),
|
||||
).query
|
||||
People.filter_attr = list_options
|
||||
records = People.filter_all(
|
||||
*People.valid_record_args(People),
|
||||
)
|
||||
records = People.filter_all()
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
message="People are listed successfully",
|
||||
@@ -68,9 +63,7 @@ class PeopleListEventMethods(MethodToEvent):
|
||||
token_dict: EmployeeTokenObject,
|
||||
):
|
||||
People.filter_attr = list_options
|
||||
records = People.filter_all(
|
||||
*People.valid_record_args(People),
|
||||
).data
|
||||
records = People.filter_all().data
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
message="People are listed successfully",
|
||||
@@ -85,9 +78,7 @@ class PeopleListEventMethods(MethodToEvent):
|
||||
):
|
||||
if isinstance(token_dict, EmployeeTokenObject):
|
||||
People.filter_attr = list_options
|
||||
records = People.filter_all(
|
||||
*People.valid_record_args(People),
|
||||
).data
|
||||
records = People.filter_all().data
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
message="People are listed successfully",
|
||||
@@ -142,7 +133,6 @@ class PeopleUpdateEventMethods(MethodToEvent):
|
||||
if isinstance(token_dict, EmployeeTokenObject):
|
||||
find_one_user = Users.filter_one(
|
||||
Users.uu_id == user_uu_id,
|
||||
*Users.valid_record_args(Users),
|
||||
).data
|
||||
access_authorized_company = Companies.select_action(
|
||||
duty_id_list=[
|
||||
@@ -164,7 +154,6 @@ class PeopleUpdateEventMethods(MethodToEvent):
|
||||
elif isinstance(token_dict, OccupantTokenObject):
|
||||
find_one_user = People.filter_one(
|
||||
People.uu_id == user_uu_id,
|
||||
*People.valid_record_args(People),
|
||||
).data
|
||||
access_authorized_company = Companies.select_action(
|
||||
duty_id_list=[getattr(token_dict, "duty_id")],
|
||||
|
||||
@@ -46,13 +46,12 @@ class UserListEventMethods(MethodToEvent):
|
||||
people_id_list = (
|
||||
user.person_id
|
||||
for user in Users.filter_all(
|
||||
Users.uu_id.in_(people_ids), *Users.valid_record_args(Users)
|
||||
Users.uu_id.in_(people_ids)
|
||||
).data
|
||||
)
|
||||
Users.filter_attr = list_options
|
||||
records = Users.filter_all(
|
||||
Users.person_id.in_(people_id_list),
|
||||
*Users.valid_record_args(Users),
|
||||
)
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
@@ -60,9 +59,7 @@ class UserListEventMethods(MethodToEvent):
|
||||
result=records,
|
||||
)
|
||||
Users.filter_attr = list_options
|
||||
records = Users.filter_all(
|
||||
*Users.valid_record_args(Users),
|
||||
)
|
||||
records = Users.filter_all()
|
||||
return AlchemyJsonResponse(
|
||||
completed=True,
|
||||
message="Users are listed successfully",
|
||||
@@ -161,7 +158,6 @@ class UserPatchEventMethods(MethodToEvent):
|
||||
def user_patch(cls, data: PatchRecord, user_uu_id: str, token_dict):
|
||||
find_one_user = Users.filter_one(
|
||||
Users.uu_id == user_uu_id,
|
||||
*Users.valid_record_args(Users),
|
||||
).data
|
||||
access_authorized_company = Companies.select_action(
|
||||
duty_id_list=[getattr(token_dict, "duty_id", 5)],
|
||||
|
||||
Reference in New Issue
Block a user