import { ApiClientFactory } from '../core/api.client.factory'; import { ProjectLaborStaffModel, ManagerDetailModel, WorkerDetailModel } from '../model/projectLaborStaff.model'; interface milestoneParams { projectId: string; timePoint: string; type: string } export class ProjectLaborStaffService { constructor(private factory: ApiClientFactory) {} // 查询分包队在岗人数 async loadStaffGroup(projectId: string, tenantId: string): Promise { const result = await this.factory.gssApi.get( `/projects/${projectId}/labor/companyClassifyGroup?tenantId=${tenantId}` ); return result; } // 查询管理人员在岗明细 async loadManagerDetail( projectId: string, pageIndex: number, pageSize: number, tenantId: string ): Promise { const result = await this.factory.gssApi.get( `/projects/${projectId}/labor/companyClassifyGroup/managerDetail?tenantId=${tenantId}&pageIndex=${pageIndex}&pageSize=${pageSize}` ); return result; } // 查询工人在岗明细 async loadworkerDetail( projectId: string, type: string, pageIndex: number, pageSize: number, tenantId: string ): Promise { const result = await this.factory.gssApi.get( `/projects/${projectId}/labor/companyClassifyGroup/workerDetail/${type}?tenantId=${tenantId}&pageIndex=${pageIndex}&pageSize=${pageSize}` ); return result; } // 获取计划延期情况 async loadPlanDelay(projectId: string): Promise { const result = await this.factory.gssApi.get( `/web/projects/${projectId}/production/scheduling/progress/planDelay` ); return result; } // 获取实时现场的当天天气情况 async loadRealWeather(projectId: string): Promise { const result = await this.factory.gssApi.get(`/web/projects/${projectId}/real/time/site/realWeather`); return result; } // 实时现场-业务数据 async loadSiteRealInfo(projectId: string): Promise { const result = await this.factory.gssApi.get(`/web/projects/${projectId}/real/time/site/realInfo`); return result; } // 实时现场-安全管理二级 async loadsafetyList(projectId: string, type: string, pageIndex?: number, pageSize?: number): Promise { const result = await this.factory.gssApi.get( `/web/projects/${projectId}/real/time/site/safety/list?type=${type}&pageIndex=${pageIndex}&pageSize=${pageSize}` ); return result; } // 实施现场-劳务在线人数二级弹窗 async loadLaborPeopleInfo(projectId: string, pageIndex?: number, pageSize?: number): Promise { const result = await this.factory.gssApi.get( `/web/projects/${projectId}/real/time/site/labor/list?pageIndex=${pageIndex}&pageSize=${pageSize}` ); return result; } // 实时现场-物料今日收料二级弹窗接口 async loadReceiveOverview(projectId: string, pageIndex?: number, pageSize?: number): Promise { const result = await this.factory.gssApi.get( `/web/projects/${projectId}/real/time/site/receiveOverview/list?pageIndex=${pageIndex}&pageSize=${pageSize}` ); return result; } // 实时现场-物料超负差车辆二级弹窗 async loadLaborCfcList(projectId: string, pageIndex?: number, pageSize?: number): Promise { const result = await this.factory.gssApi.get( `/web/projects/${projectId}/real/time/site/receiveOverview/hyperbolas/list?pageIndex=${pageIndex}&pageSize=${pageSize}` ); return result; } // 实时现场-质量二级弹窗 async loadQualityData(projectId: string, type: string, pageIndex?: number, pageSize?: number): Promise { const result = await this.factory.gssApi.get( `/web/projects/${projectId}/real/time/site/quality/list?type=${type}&pageIndex=${pageIndex}&pageSize=${pageSize}` ); return result; } // 实时现场-质量三级弹窗 async loadQualityDetailData(projectId: string, recordId: string, tenantId: string): Promise { const result = await this.factory.gssApi.get( `/web/projects/${projectId}/real/time/site/quality/${recordId}?tenantId=${tenantId}` ); return result; } // 生产调度 - 项目里程碑 async loadBimLandmark(projectId: string): Promise { const result = await this.factory.gssApi.get( `/web/projects/${projectId}/production/scheduling/progress/bimLandmark` ); return result; } // 生产调度 - 项目里程碑已完成节点的详细信息 async loadBimCompleteSegment(projectId: string, params: milestoneParams): Promise { const result = await this.factory.gssApi.get( `/web/projects/${projectId}/production/scheduling/progress/bimCompleteSegment`, { projectId, ...params } ); return result; } // 生产调度 - 项目里程碑未完成节点的详细信息 async loadBimPlanSegment(projectId: string, params: milestoneParams): Promise { const result = await this.factory.gssApi.get( `/web/projects/${projectId}/production/scheduling/progress/bimPlanSegment`, { projectId, ...params } ); return result; } // 生产调度 - 项目里程碑 模拟建造 async bimSimulateSegment(projectId: string): Promise { const result = await this.factory.gssApi.get( `/web/projects/${projectId}/production/scheduling/progress/bimSimulateSegment`, { projectId } ); return result; } // 生产调度 - 基础模型GIS信息 async bimGisMap(projectId: string): Promise { const result = await this.factory.gssApi.get( `/gss/bimproduct/projects/${projectId}/model/gis` ); return result; } }