Пример #1
0
def delete_asset(obj_id, operator):
    '''
    删除资产
    '''
    obj = base_ctl.get_obj(AssetModel, obj_id)
    if obj.user_id != operator.id:
        raise errors.CommonError('数据异常')
    base_ctl.delete_obj(AssetModel, obj_id, operator)
Пример #2
0
def delete_berry_type(obj_id, operator=None):
    '''
    删除任务类型
    '''
    query = {'parent_id': obj_id}
    if BerryTypeModel.objects.filter(**query).exists():
        raise errors.CommonError('存在子类型,不允许删除')
    base_ctl.delete_obj(BerryTypeModel, obj_id, operator)
Пример #3
0
def delete_aliyun_key(obj_id, operator):
    '''
    删除阿里云key
    '''
    obj = base_ctl.get_obj(AliyunKeyModel, obj_id)
    if obj.status == AliyunKeyModel.ST_ENABLE:
        raise errors.CommonError('不允许删除启用状态的Key')
    base_ctl.delete_obj(AliyunKeyModel, obj_id, operator)
Пример #4
0
def delete_user(obj_id, operator=None):
    '''
    删除用户
    '''
    obj = base_ctl.get_obj(UserModel, obj_id)
    if is_admin(obj):
        raise errors.CommonError('超级管理员用户不允许删除')

    with transaction.atomic():
        base_ctl.delete_obj(UserModel, obj_id, operator)
Пример #5
0
def delete_role(obj_id, operator=None):
    '''
    删除角色
    '''
    obj = base_ctl.get_obj_or_none(RoleModel, obj_id)
    if not obj:
        raise errors.CommonError('角色不存在')
    if obj.sign == 'admin':
        raise errors.CommonError('超级管理员不允许删除')
    base_ctl.delete_obj(RoleModel, obj_id, operator)
Пример #6
0
def delete_department_user(department_id, user_id, operator=None):
    '''
    删除部门关联用户
    '''
    query = {
        'user_id': user_id,
        'department_id': department_id,
    }
    obj = DepartmentUserModel.objects.filter(**query).first()
    if not obj:
        raise errors.CommonError('用户未在此部门中')
    base_ctl.delete_obj(DepartmentUserModel, obj.id, operator)
Пример #7
0
def delete_role_user(role_id, user_id, operator=None):
    '''
    删除角色关联用户
    '''
    query = {
        'user_id': user_id,
        'role_id': role_id,
    }
    obj = RoleUserModel.objects.filter(**query).first()
    if not obj:
        raise errors.CommonError('用户未关联此角色')
    base_ctl.delete_obj(RoleUserModel, obj.id, operator)
Пример #8
0
def delete_service_user(obj_id, user_id, operator=None):
    '''
    删除服务关联用户
    '''
    query = {
        'service_id': obj_id,
        'user_id': user_id,
    }
    obj = ServiceUserModel.objects.filter(**query).first()
    if not obj:
        raise errors.CommonError('用户未在此项目中')
    base_ctl.delete_obj(ServiceUserModel, obj.id, operator)
Пример #9
0
def delete_service_department(obj_id, department_id, operator=None):
    '''
    删除服务关联部门
    '''
    query = {
        'service_id': obj_id,
        'department_id': department_id,
    }
    obj = DepartmentServiceModel.objects.filter(**query).first()
    if not obj:
        raise errors.CommonError('服务未关联此部门')
    base_ctl.delete_obj(DepartmentServiceModel, obj.id, operator)
Пример #10
0
def delete_role_permission(role_id, permission_id, operator=None):
    '''
    删除角色关联权限
    '''
    query = {
        'role_id': role_id,
        'permission_id': permission_id,
    }
    obj = RolePermissionModel.objects.filter(**query).first()
    if not obj:
        raise errors.CommonError('角色未关联此权限')
    base_ctl.delete_obj(RolePermissionModel, obj.id, operator)
Пример #11
0
def delete_service_asset(obj_id, asset_id, operator=None):
    '''
    删除服务关联资产模块
    '''
    query = {
        'service_id': obj_id,
        'asset_id': asset_id,
    }
    obj = ServiceAssetModel.objects.filter(**query).first()
    if not obj:
        raise errors.CommonError('服务未关联此资产模块')
    base_ctl.delete_obj(ServiceAssetModel, obj.id, operator)
Пример #12
0
def delete_service_environment(obj_id, environment_id, operator=None):
    '''
    删除服务关联环境
    '''
    query = {
        'service_id': obj_id,
        'environment_id': environment_id,
    }
    obj = ServiceEnvironmentModel.objects.filter(**query).first()
    if not obj:
        raise errors.CommonError('服务未关联此环境')
    # TODO: 增加不允许删除判断
    base_ctl.delete_obj(ServiceEnvironmentModel, obj.id, operator)
Пример #13
0
def delete_role_mod(role_id, mod_id, operator=None):
    '''
    删除角色关联模块
    '''
    query = {
        'role_id': role_id,
        'mod_id': mod_id,
    }
    obj = RoleModModel.objects.filter(**query).first()
    if not obj:
        raise errors.CommonError('角色未关联此模块')
    with transaction.atomic():
        base_ctl.delete_obj(RoleModModel, obj.id, operator)
Пример #14
0
def delete_role_mod(role_id, mod_id, operator=None):
    '''
    删除角色关联模块
    '''
    query = {
        'role_id': role_id,
        'mod_id': mod_id,
    }
    obj = RoleModModel.objects.filter(**query).first()
    if not obj:
        raise errors.CommonError('角色未关联此模块')
    with transaction.atomic():
        base_ctl.delete_obj(RoleModModel, obj.id, operator)
        query = {
            'role_id': role_id,
            'permission__mod_id': mod_id,
        }
        batch_ids = RolePermissionModel.objects.filter(**query).values_list(
            'id', flat=True).all()
        if batch_ids:
            base_ctl.delete_objs(RolePermissionModel, list(set(batch_ids)))
Пример #15
0
def delete_department(obj_id, operator=None):
    '''
    删除部门
    '''
    obj = base_ctl.get_obj(DepartmentModel, obj_id)
    base_ctl.delete_obj(DepartmentModel, obj_id, operator)
Пример #16
0
def delete_asset(obj_id, operator=None):
    '''
    删除资产模块
    '''
    # TODO:删除限制,以后会和服务关联,如果存在关联关系,则不能删除
    base_ctl.delete_obj(AssetModel, obj_id, operator)
Пример #17
0
def delete_environment(obj_id, operator=None):
    '''
    删除环境
    '''
    # TODO: 增加不允许删除的限制
    base_ctl.delete_obj(EnvironmentModel, obj_id, operator)
Пример #18
0
def delete_gitlab_server(obj_id, operator=None):
    '''
    删除Gitlab服务
    '''
    base_ctl.delete_obj(GitlabServerModel, obj_id, operator)
Пример #19
0
def delete_service(obj_id, operator=None):
    '''
    删除服务
    '''
    base_ctl.delete_obj(ServiceModel, obj_id, operator)
Пример #20
0
def delete_jenkins_server(obj_id, operator=None):
    '''
    删除Jenkins服务
    '''
    base_ctl.delete_obj(JenkinsServerModel, obj_id, operator)
Пример #21
0
def delete_frame(obj_id, operator=None):
    '''
    删除框架
    '''
    # TODO: 增加不可删除判断
    base_ctl.delete_obj(FrameModel, obj_id, operator)
Пример #22
0
def delete_mod(obj_id, operator=None):
    '''
    删除模块
    '''
    base_ctl.delete_obj(ModModel, obj_id, operator)
Пример #23
0
def delete_permission(obj_id, operator=None):
    '''
    删除权限
    '''
    base_ctl.delete_obj(PermissionModel, obj_id, operator)