WebCAD-Lib-TS API 文档 - v1.0.0
    Preparing search index...

    Class LocalStorageService

    本地存储服务类

    Index

    Constructors

    Methods

    • 生成图纸唯一标识 key

      Parameters

      • serverSource: {
            type: "imports" | "designs" | "tiles";
            mapid?: string;
            version?: string;
            designPath?: string;
            branchName?: string;
        }

        服务器来源信息

      • OptionalserviceHash: string

        服务哈希值(imports/tiles类型需要)

      Returns string

    • 保存图纸到本地 IndexedDB 同一 key 的图纸会被覆盖

      Parameters

      • params: {
            serverSource: {
                type: "imports" | "designs" | "tiles";
                mapid?: string;
                version?: string;
                designPath?: string;
                branchName?: string;
                originalJsonCompressed?: Uint8Array;
                lastPatchId?: string;
            };
            webcadJson: string;
            serviceUrl?: string;
            workspace?: string;
            drawingName?: string;
            modifiedEntityIds?: number[];
            editAreas?: IEditAreaRecord[];
            editLayers?: string[];
            tileAlpha?: number;
        }

        保存参数

        • serverSource: {
              type: "imports" | "designs" | "tiles";
              mapid?: string;
              version?: string;
              designPath?: string;
              branchName?: string;
              originalJsonCompressed?: Uint8Array;
              lastPatchId?: string;
          }
        • webcadJson: string
        • OptionalserviceUrl?: string
        • Optionalworkspace?: string
        • OptionaldrawingName?: string
        • OptionalmodifiedEntityIds?: number[]

          已修改的实体 ID 列表(用于从本地加载后恢复 _modified 标识)

        • OptionaleditAreas?: IEditAreaRecord[]

          瓦片模式的编辑区域列表

        • OptionaleditLayers?: string[]

          瓦片模式的编辑图层列表

        • OptionaltileAlpha?: number

          瓦片图层透明度(0-1)

      Returns Promise<{ success: boolean; error?: string; id?: number }>

      保存结果

    • 加载图纸

      Parameters

      • key: string

        图纸唯一标识

      Returns Promise<
          {
              success: boolean;
              record?: ILocalDrawingRecord;
              webcadJson?: string;
              error?: string;
          },
      >

      图纸数据

    • 根据 ID 加载图纸

      Parameters

      • id: number

        记录ID

      Returns Promise<
          {
              success: boolean;
              record?: ILocalDrawingRecord;
              webcadJson?: string;
              error?: string;
          },
      >

      图纸数据

    • 列出所有本地缓存的图纸

      Parameters

      • Optionaltype: "imports" | "designs" | "tiles"

        可选,按类型过滤

      Returns Promise<ILocalDrawingListItem[]>

      图纸列表

      注意:

      • imports 类型会根据当前服务 hash 过滤,只返回当前服务的导入图纸
      • tiles 类型(瓦片模式)也会根据当前服务 hash 过滤
      • designs 类型不关联服务,返回所有设计图
      • server 类型返回所有服务器图纸
    • 删除图纸

      Parameters

      • key: string

        图纸唯一标识

      Returns Promise<{ success: boolean; error?: string }>

      删除结果

    • 根据 ID 删除图纸

      Parameters

      • id: number

        记录ID

      Returns Promise<{ success: boolean; error?: string }>

      删除结果

    • 清空所有本地缓存

      Returns Promise<{ success: boolean; error?: string }>

      清空结果

    • 获取本地缓存统计信息

      注意:imports 和 tiles 类型只统计当前服务的图纸

      Returns Promise<
          {
              totalCount: number;
              serverCount: number;
              importsCount: number;
              designsCount: number;
              tilesCount: number;
              totalSize: number;
          },
      >

    • 检查图纸是否存在本地缓存

      Parameters

      • key: string

        图纸唯一标识

      Returns Promise<boolean>

    • 创建本地符号分类

      Parameters

      • name: string

        分类名称

      Returns Promise<ILocalSymbolCategory>

    • 更新本地符号分类

      Parameters

      • id: number

        分类ID

      • name: string

        新名称

      Returns Promise<boolean>

    • 删除本地符号分类(同时删除分类下的所有符号)

      Parameters

      • id: number

        分类ID

      Returns Promise<boolean>

    • 获取分类下的本地符号列表

      Parameters

      • categoryId: number

        分类ID

      Returns Promise<ILocalSymbolRecord[]>

    • 获取本地符号详情

      Parameters

      • id: number

        符号ID

      Returns Promise<{ record: ILocalSymbolRecord; vcadData: string }>

    • 保存本地符号

      Parameters

      • params: {
            categoryId: number;
            name: string;
            basePoint: [number, number];
            thumbnail?: string;
            vcadData: string;
        }

        符号参数

      Returns Promise<ILocalSymbolRecord>

    • 更新本地符号

      Parameters

      • id: number

        符号ID

      • params: {
            name?: string;
            basePoint?: [number, number];
            thumbnail?: string;
            vcadData?: string;
        }

        更新参数

      Returns Promise<boolean>

    • 删除本地符号

      Parameters

      • id: number

        符号ID

      Returns Promise<boolean>

    • 获取本地符号统计信息

      Returns Promise<{ categoryCount: number; symbolCount: number; totalSize: number }>