alchemy functions updated

This commit is contained in:
2024-11-10 12:49:31 +03:00
parent e01a2c8afb
commit 7a7241c71c
13 changed files with 238 additions and 180 deletions

View File

@@ -144,21 +144,23 @@ class AuthenticationSelectEventMethods(MethodToEvent):
Event2Employee.get_event_id_by_employee_id(employee_id=employee.id)
)
staff = Staff.filter_one(
Staff.id==employee.staff_id,
Staff.id == employee.staff_id,
*Staff.valid_record_args(Staff),
).data
duties = Duties.filter_one(
Duties.id==staff.duties_id,
Duties.id == staff.duties_id,
*Duties.valid_record_args(Duties),
).data
department = Departments.filter_one(
Departments.id==duties.department_id,
Departments.id == duties.department_id,
).data
bulk_id = Duty.filter_by_one(
duty_code="BULK", *Duty.valid_record_args(Duty)
).data
bulk_duty_id = Duties.filter_by_one(
company_id=selected_company.id, duties_id=bulk_id.id, *Duties.valid_record_dict
company_id=selected_company.id,
duties_id=bulk_id.id,
*Duties.valid_record_dict,
).data
update_selected_to_redis(
request=request,
@@ -199,25 +201,27 @@ class AuthenticationSelectEventMethods(MethodToEvent):
detail="Build Part is not found",
)
build = Build.filter_one(
Build.id==build_part.build_id,
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),
RelationshipEmployee2Build.member_id == build.id,
*RelationshipEmployee2Build.valid_record_args(
RelationshipEmployee2Build
),
).data
company_related = Companies.filter_one(
Companies.id==related_company.company_id,
Companies.id == related_company.company_id,
*Companies.valid_record_args(Companies),
).data
responsible_employee = Employees.find_one(
Employees.id==related_company.employee_id,
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.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 = (
@@ -293,13 +297,13 @@ class AuthenticationRefreshEventMethods(MethodToEvent):
access_token = str(request.headers.get(Auth.ACCESS_TOKEN_TAG))
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.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.domain == found_user.domain_name,
UsersTokens.user_id == found_user.id,
UsersTokens.token_type == "RememberMe",
*UsersTokens.valid_record_args(UsersTokens),
).data
access_dict = {
@@ -329,12 +333,14 @@ class AuthenticationChangePasswordEventMethods(MethodToEvent):
@classmethod
def authentication_change_password(
cls, data: ChangePassword, token_dict: Union[EmployeeTokenObject, OccupantTokenObject]
cls,
data: ChangePassword,
token_dict: Union[EmployeeTokenObject, OccupantTokenObject],
):
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),
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)
@@ -366,16 +372,14 @@ class AuthenticationCreatePasswordEventMethods(MethodToEvent):
}
@classmethod
def authentication_create_password(
cls, data: CreatePassword
):
def authentication_create_password(cls, data: CreatePassword):
if not data.re_password == data.password:
raise HTTPException(
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,
*Users.valid_record_args(Users),
).data:
found_user.create_password(password=data.password)
found_user.password_token = None
@@ -416,10 +420,13 @@ class AuthenticationDisconnectUserEventMethods(MethodToEvent):
@classmethod
def authentication_disconnect_user(
cls, request: Request, data: Logout, token_dict: Union[EmployeeTokenObject, OccupantTokenObject]
cls,
request: Request,
data: Logout,
token_dict: Union[EmployeeTokenObject, OccupantTokenObject],
):
found_user = Users.filter_one(
Users.uu_id==token_dict.person_uu_id,
Users.uu_id == token_dict.person_uu_id,
*Users.valid_record_args(Users),
).data
if not found_user:
@@ -479,6 +486,7 @@ class AuthenticationLogoutEventMethods(MethodToEvent):
cls, data: Logout, token_dict: Union[EmployeeTokenObject, OccupantTokenObject]
):
from api_services.redis.functions import get_object_via_user_uu_id
if not token_dict:
return JSONResponse(
content={
@@ -519,7 +527,6 @@ class AuthenticationLogoutEventMethods(MethodToEvent):
)
class AuthenticationRefreshTokenEventMethods(MethodToEvent):
event_type = "UPDATE"
@@ -540,8 +547,8 @@ 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,
*Users.valid_record_args(Users),
):
found_user: Users = found_user
access_key = save_access_token_to_redis(