import { ApiClientFactory } from '../core/api.client.factory'; import { IPhotoFolderList, AddPhotosData, FilterData, IEditWidget, IGetWidget, IWidgetPhotoFiles } from '../model/constructionPhotos.model'; export class ConstructionPhotosService { constructor(private factory: ApiClientFactory) { } // 获取流水段及流水段分组树形结构数据 async loadDepartmentData(projectId: string): Promise { let url = `/web/projects/${projectId}/segments/tree`; const data = await this.factory.gssApi.get(url); return data; } // 相册管理 - 添加相册 async loadAddPhotoFolder(projectId: string, photoName: string): Promise { let url = `/web/projects/${projectId}/constructionPhotoFolder/addPhotoFolder`; const data = await this.factory.gssApi.post(url, { photoName }); return data; } // 相册管理 - 编辑相册 async loadEditPhotoFolder(projectId: string, id: string, photoName: string): Promise { let url = `/web/projects/${projectId}/constructionPhotoFolder/editPhotoFolder/${id}`; const data = await this.factory.gssApi.post(url, { photoName }); return data; } // 相册管理 - 获取相册列表 async loadPhotoFolderList(projectId: string, includeThird?: boolean): Promise { let url = `/web/projects/${projectId}/constructionPhotoFolder/getFolderList`; const data = await this.factory.gssApi.get(url, {includeThird}); return data; } // 相册管理 - 上移下移 async loadMovePhotoFolder(projectId: string, id: string, moveUp: boolean): Promise { let url = `/web/projects/${projectId}/constructionPhotoFolder/movePhotoFolder/id/${id}?moveUp=${moveUp}`; const data = await this.factory.gssApi.get(url); return data; } // 相册管理 - 删除相册 async loadRemovePhotoFolder(projectId: string, id: string): Promise { let url = `/web/projects/${projectId}/constructionPhotoFolder/removePhotoFolder/id/${id}`; const data = await this.factory.gssApi.delete(url); return data; } // 新增照片 async loadAddPhotos(projectId: string, params: AddPhotosData): Promise { let url = `/web/projects/${projectId}/constructionPhotoFiles/add`; const data = await this.factory.gssApi.post(url, params); return data; } // 相册列表显示 async loadAlbumLists(projectId: string, pageIndex?: number, pageSize?: number): Promise { let url = `/web/projects/${projectId}/constructionPhotoFolder/showFolderList`; const data = await this.factory.gssApi.get(url, { pageIndex, pageSize }); return data; } // 获取全部相册信息 async loadAllPhotosInfo(projectId: string): Promise { let url = `/web/projects/${projectId}/constructionPhotoFolder/totalImage`; const data = await this.factory.gssApi.get(url); return data; } // 相册照片列表 async loadPhotosLists(projectId: string, params: FilterData): Promise { let url = `/web/projects/${projectId}/constructionPhotoFiles/showInfosList`; const data = await this.factory.gssApi.get(url, params); return data; } // 施工相册组件 - 编辑组件 async loadEditWidget(projectId: string, data: IEditWidget): Promise { let url = `/web/projects/${projectId}/constructionPhotoWidget/editWidget`; const result = await this.factory.gssApi.post(url, data); return result; } // 施工相册组件 - 获取组件信息 async loadGetWidget(projectId: string, widgetTag: string): Promise { let url = `/web/projects/${projectId}/constructionPhotoWidget/getWidget?widgetTag=${widgetTag}`; const result = await this.factory.gssApi.get(url); return result; } // 施工相册组件 - 组件照片展示 async loadWidgetPhotoFiles(projectId: string, data: any): Promise { let url = `/web/projects/${projectId}/constructionPhotoWidget/widgetAllPhotoFiles`; const result = await this.factory.gssApi.get(url, data); return result; } // 施工相册 - 下载 async photoFilesDownload(projectId: string, photoFolderId: string, data: any): Promise { let url = `/web/projects/${projectId}/constructionPhotoFiles/photoFilesDownload/${photoFolderId}`; const result = await this.factory.gssApi.post(url, data); return result; } // 施工相册 - 删除照片 async photoFilesDelete(projectId: string, data: any): Promise { let url = `/web/projects/${projectId}/constructionPhotoFiles/removeFiles`; const result = await this.factory.gssApi.post(url, data); return result; } // 照片事件模式列表 async loadTypePhotosLists(projectId: string, params: FilterData): Promise { let url = `web/projects/${projectId}/constructionPhotoInfos/list`; const data = await this.factory.gssApi.get(url, { folderId: params.photoFolderId, startDate: params.startDate, endDate: params.endDate, segmentName: params.segmentName, filter: params.filter }); return data; } // 施工相册 - 相册显隐 async loadShowPhotoFolder(projectId: string, show: string, sourceCode: string): Promise { let url = `/web/projects/${projectId}/constructionPhotoFolder/${show}?sourceCode=${sourceCode}`; const result = await this.factory.gssApi.get(url); return result; } }