import { ApiClientFactory } from '../core/api.client.factory'; import { INumberStatistics, ITechnicalDetail, ITechnicalWarning, ITechnicalChangeDetail, BIM5DParticipatingUnitsData } from '../model/technical.model'; export class TechnicalService { constructor(private factory: ApiClientFactory) {} // 查询配置信息 async loadTechnology(projectId: string, type: string): Promise { const result = await this.factory.entity.get(`/api/web/projects/${projectId}/technology?type=${type}`); return result; } // 保存配置信息 async saveTechnology(projectId: string, type: string, params: any): Promise { const result = await this.factory.entity.post( `/api/web/projects/${projectId}/technology?type=${type}`, params ); return result; } // 技术管理 // 数量统计 async loadNumberStatistics(projectId: string): Promise { const url = `/gss/bimtech/projects/${projectId}/data/count`; const result = await this.factory.gssApi.get(url); return result; } // BIM5D参建单位 async loadBIM5DParticipatingUnits(projectId: string): Promise { const url = `/gss/overview/projects/${projectId}/participatingunits/list`; const result = await this.factory.gssApi.get(url); return result; } // 方案级别 async loadPackageLevel(projectId: string): Promise { const url = `/gss/bimtech/projects/${projectId}/scheme/level/count`; const result = await this.factory.gssApi.get(url); return result; } // 方案级别详情 async loadPackageLevelDetail(projectId: string, level: string): Promise { const url = `/gss/bimtech/projects/${projectId}/scheme/level/list`; const result = await this.factory.gssApi.get(url, { level }); return result; } // 方案状态 async loadPackageState(projectId: string): Promise { const url = `/gss/bimtech/projects/${projectId}/scheme/status/count`; const result = await this.factory.gssApi.get(url); return result; } // 方案状态详情 async loadPackageStateDetail(projectId: string, status: string): Promise { const url = `/gss/bimtech/projects/${projectId}/scheme/status/list`; const result = await this.factory.gssApi.get(url, { status }); return result; } // 方案类型 async loadPackageType(projectId: string): Promise { const url = `/gss/bimtech/projects/${projectId}/scheme/category/count`; const result = await this.factory.gssApi.get(url); return result; } // 方案类型详情 async loadPackageTypeDetail(projectId: string, category: string): Promise { const url = `/gss/bimtech/projects/${projectId}/scheme/category/list`; const result = await this.factory.gssApi.get(url, { category }); return result; } // 方案预警 async loadPackageWarning(projectId: string): Promise { const url = `/gss/bimtech/projects/${projectId}/scheme/manage/warning/list`; const result = await this.factory.gssApi.get(url); return result; } // 变更问题 async loadChangeProblem(projectId: string): Promise { const url = `/gss/bimtech/projects/${projectId}/blueprint/problem/category/count`; const result = await this.factory.gssApi.get(url); return result; } // 变更问题详情 async loadChangeProblemDetail(projectId: string, category: string): Promise { const url = `/gss/bimtech/projects/${projectId}/blueprint/problem/category/list`; const result = await this.factory.gssApi.get(url, { category }); return result; } // 变更问题所在专业 async loadChangeProblemProfession(projectId: string): Promise { const url = `/gss/bimtech/projects/${projectId}/blueprint/problem/major/count`; const result = await this.factory.gssApi.get(url); return result; } // 变更问题所在专业详情 async loadChangeProblemProfessionDetail(projectId: string, major: string): Promise { const url = `/gss/bimtech/projects/${projectId}/blueprint/problem/major/list`; const result = await this.factory.gssApi.get(url, { major }); return result; } // 变更问题状态 async loadChangeProblemState(projectId: string): Promise { const url = `/gss/bimtech/projects/${projectId}/blueprint/problem/status/count`; const result = await this.factory.gssApi.get(url); return result; } // 变更问题状态详情 async loadChangeProblemStateDetail(projectId: string, status: string): Promise { const url = `/gss/bimtech/projects/${projectId}/blueprint/problem/status/list`; const result = await this.factory.gssApi.get(url, { status }); return result; } // 变更预警 async loadChangeWarning(projectId: string): Promise { const url = `/gss/bimtech/projects/${projectId}/blueprint/problem/warning/list`; const result = await this.factory.gssApi.get(url); return result; } // 获取BIM集成URl async loadBIMStaticUrl(projectId: string, pageType: string): Promise { const url = `/gss/bimtech/projects/${projectId}/static/url?pageType=${pageType}`; const result = await this.factory.gssApi.get(url); return result; } // 技术交底 // 变更费用统计 async getCostChanges(projectId: string): Promise { const url = `web/projects/${projectId}/bimtech/statistics/form/costChanges`; const result = await this.factory.gssApi.get(url); return result; } // 变更费用明细 async getCostChangesDetail(projectId: string, type: string, params: any): Promise { const url = `web/projects/${projectId}/bimtech/statistics/form/costChanges/detail/${type}`; const result = await this.factory.gssApi.get(url, params); return result; } // 方案预警超期数量统计 async getWarnAndOverdue(projectId: string): Promise { const url = `gss/bimtech/projects/${projectId}/scheme/warnAndOverdue`; const result = await this.factory.gssApi.get(url); return result; } // 方案预警超期详情 async getWarnAndOverdueDetail(projectId: string, type: string, params: any): Promise { const url = `gss/bimtech/projects/${projectId}/scheme/warnAndOverdue/details?type=${type}`; const result = await this.factory.gssApi.get(url, params); return result; } // 交底累计接受人数 async recieveStatistics(projectId: string): Promise { const url = `web/projects/${projectId}/bimtech/disclosureManagers/recieveStatistics`; const result = await this.factory.gssApi.get(url); return result; } }