mirror of
https://github.com/1Panel-dev/MaxKB.git
synced 2025-12-26 01:33:05 +00:00
refactor: update license validation logic to ensure proper function calls
This commit is contained in:
parent
173cf52584
commit
8231ae66e4
|
|
@ -41,7 +41,7 @@ class ChatEmbedSerializer(serializers.Serializer):
|
|||
show_guide = 'true'
|
||||
float_icon = f"{self.data.get('protocol')}://{self.data.get('host')}{CONFIG.get_chat_path()}/MaxKB.gif"
|
||||
is_license_valid = DatabaseModelManage.get_model('license_is_valid')
|
||||
X_PACK_LICENSE_IS_VALID = is_license_valid if is_license_valid is not None else False
|
||||
X_PACK_LICENSE_IS_VALID = is_license_valid() if is_license_valid() is not None else False
|
||||
# 获取接入的query参数
|
||||
query = self.get_query_api_input(application_access_token.application, params)
|
||||
float_location = {"x": {"type": "right", "value": 0}, "y": {"type": "bottom", "value": 30}}
|
||||
|
|
|
|||
|
|
@ -242,7 +242,7 @@ def valid_license(model=None, count=None, message=None):
|
|||
def inner(func):
|
||||
def run(*args, **kwargs):
|
||||
is_license_valid = DatabaseModelManage.get_model('license_is_valid')
|
||||
is_license_valid = is_license_valid if is_license_valid is not None else False
|
||||
is_license_valid = is_license_valid() if is_license_valid() is not None else False
|
||||
record_count = QuerySet(model).count()
|
||||
|
||||
if not is_license_valid and record_count >= count:
|
||||
|
|
|
|||
|
|
@ -38,4 +38,4 @@ class SystemProfileSerializer(serializers.Serializer):
|
|||
version = os.environ.get('MAXKB_VERSION')
|
||||
license_is_valid = DatabaseModelManage.get_model('license_is_valid') or (lambda: False)
|
||||
return {'version': version, 'edition': settings.edition,
|
||||
'license_is_valid': license_is_valid if license_is_valid is not None else False}
|
||||
'license_is_valid': license_is_valid() if license_is_valid() is not None else False}
|
||||
|
|
|
|||
|
|
@ -569,23 +569,22 @@ def update_user_role(instance, user, user_id=None):
|
|||
if workspace_user_role_mapping_model:
|
||||
role_setting = instance.get('role_setting')
|
||||
license_is_valid = DatabaseModelManage.get_model('license_is_valid') or (lambda: False)
|
||||
license_is_valid = license_is_valid if license_is_valid is not None else False
|
||||
if not license_is_valid and isinstance(role_setting, list) and len(role_setting) == 0:
|
||||
workspace_user_role_mapping_model.objects.create(
|
||||
id=uuid.uuid7(),
|
||||
user_id=user.id,
|
||||
role_id=RoleConstants.USER.name,
|
||||
workspace_id='default'
|
||||
)
|
||||
license_is_valid = license_is_valid() if license_is_valid() is not None else False
|
||||
if not role_setting or (len(role_setting) == 1
|
||||
and role_setting[0].get('role_id') == ''
|
||||
and len(role_setting[0].get('workspace_ids', [])) == 0):
|
||||
if not license_is_valid:
|
||||
workspace_user_role_mapping_model.objects.create(
|
||||
id=uuid.uuid7(),
|
||||
user_id=user.id,
|
||||
role_id=RoleConstants.USER.name,
|
||||
workspace_id='default'
|
||||
)
|
||||
return
|
||||
|
||||
is_admin = workspace_user_role_mapping_model.objects.filter(user_id=user_id,
|
||||
role_id=RoleConstants.ADMIN.name).exists()
|
||||
|
||||
if not role_setting or (len(role_setting) == 1
|
||||
and role_setting[0].get('role_id') == ''
|
||||
and len(role_setting[0].get('workspace_ids', [])) == 0):
|
||||
return
|
||||
if str(user.id) == 'f0dd8f71-e4ee-11ee-8c84-a8a1595801ab':
|
||||
# 需要判断当前角色的权限 不能删除系统管理员 空间管理员 普通管理员等角色
|
||||
# role_setting是一个数组 结构式 [{role_id:1,workspace_ids:[1,2]}]
|
||||
|
|
|
|||
Loading…
Reference in New Issue