diff --git a/src/core/GraphicStore.ts b/src/core/GraphicStore.ts index c237d74..902705b 100644 --- a/src/core/GraphicStore.ts +++ b/src/core/GraphicStore.ts @@ -9,12 +9,12 @@ export interface GraphicQueryStore { /** * 根据id获取图形 */ - queryById(id: number | string): T; + queryById(id: number): T; /** * 根据id模糊查询图形 * @param id */ - queryByIdAmbiguous(id: number | string): JlGraphic[]; + queryByIdAmbiguous(id: number): JlGraphic[]; /** * 根据类型获取图形列表 @@ -79,20 +79,15 @@ export class GraphicStore implements GraphicQueryStore { getAllGraphics(): JlGraphic[] { return [...this.store.values()]; } - queryById(id: number | string): T { - let nid = id; - if (typeof id === 'string') { - nid = parseInt(id); - } - const graphic = this.store.get(nid as number) as T; - if (!graphic) throw Error(`未找到id为 [${nid}] 的图形.`); - return this.store.get(nid as number) as T; + queryById(id: number): T { + const graphic = this.store.get(id) as T; + if (!graphic) throw Error(`未找到id为 [${id}] 的图形.`); + return this.store.get(id) as T; } - queryByIdAmbiguous(id: number | string): JlGraphic[] { - const nid = id + ''; + queryByIdAmbiguous(id: number): JlGraphic[] { const list: JlGraphic[] = []; this.store.forEach((g) => { - if ((g.id + '').search(nid) >= 0) { + if (Math.abs(g.id - id) <= 10) { list.push(g); } });