cubes:
  - name: cloud_resource
    sql: >
      SELECT * FROM cloud_resource WHERE cloud_resource.deletedAt IS NULL AND cloud_resource.classType <> 'Prod' AND (cloud_resource.providerID = 1 OR cloud_resource.providerID = 2 OR cloud_resource.providerID = 4)
    data_source: default

    joins:
      - name: cloud_provider
        relationship: many_to_one
        sql: "{CUBE}.providerID = {cloud_provider.id}"
      - name: user
        relationship: one_to_one
        sql: "{CUBE}.ownerLarkID = {user.larkuserid}"
      - name: department_level
        relationship: one_to_one
        sql: "{CUBE}.departLarkID = {department_level.lev3LarkID}"

    dimensions:
      - name: id
        sql: id
        type: number
        primary_key: true
        shown: true

      - name: managementid
        sql: managementID
        type: string

      - name: cloudinsid
        sql: cloudInsID
        type: string

      - name: name
        sql: name
        type: string

      - name: ownerlarkid
        sql: ownerLarkID
        type: string

      - name: desc
        sql: desc
        type: string

      - name: departlarkid
        sql: departLarkID
        type: string

      - name: classtype
        sql: classType
        type: string

      - name: createdat
        sql: createdAt
        type: time

      - name: updatedat
        sql: updatedAt
        type: time

      - name: deletedat
        sql: deletedAt
        type: time

    measures:
      - name: count
        type: count

    pre_aggregations:
      # Pre-aggregation definitions go here.
      # Learn more in the documentation: https://cube.dev/docs/caching/pre-aggregations/getting-started

