@dssp/project 0.0.5 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/client/pages/project/project-detail.ts +3 -4
- package/client/pages/resource/construction-type-management.ts +40 -21
- package/client/pages/resource/manager-management.ts +28 -7
- package/client/pages/resource/worker-type-management.ts +41 -9
- package/dist-client/pages/project/project-detail.js +2 -4
- package/dist-client/pages/project/project-detail.js.map +1 -1
- package/dist-client/pages/resource/construction-type-management.d.ts +0 -5
- package/dist-client/pages/resource/construction-type-management.js +40 -21
- package/dist-client/pages/resource/construction-type-management.js.map +1 -1
- package/dist-client/pages/resource/manager-management.js +28 -7
- package/dist-client/pages/resource/manager-management.js.map +1 -1
- package/dist-client/pages/resource/worker-type-management.d.ts +2 -1
- package/dist-client/pages/resource/worker-type-management.js +40 -9
- package/dist-client/pages/resource/worker-type-management.js.map +1 -1
- package/dist-client/route.d.ts +1 -1
- package/dist-client/tsconfig.tsbuildinfo +1 -1
- package/dist-server/service/project/project-query.js +3 -3
- package/dist-server/service/project/project-query.js.map +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
- package/server/service/project/project-query.ts +4 -7
|
@@ -37,9 +37,9 @@ let ProjectQuery = class ProjectQuery {
|
|
|
37
37
|
const { domain } = context.state;
|
|
38
38
|
const queryBuilder = (0, shell_1.getRepository)(project_1.Project)
|
|
39
39
|
.createQueryBuilder('p')
|
|
40
|
-
.select(`COUNT(CASE WHEN bi.status=
|
|
41
|
-
.addSelect(`COUNT(CASE WHEN bi.status=
|
|
42
|
-
.addSelect(`COUNT(CASE WHEN bi.status=
|
|
40
|
+
.select(`COUNT(CASE WHEN bi.status='${building_complex_1.InspectionStatus.REQUEST}' THEN 1 ELSE NULL END) AS request`)
|
|
41
|
+
.addSelect(`COUNT(CASE WHEN bi.status='${building_complex_1.InspectionStatus.PASS}' THEN 1 ELSE NULL END) AS pass`)
|
|
42
|
+
.addSelect(`COUNT(CASE WHEN bi.status='${building_complex_1.InspectionStatus.FAIL}' THEN 1 ELSE NULL END) AS fail`)
|
|
43
43
|
.innerJoin('p.buildingComplex', 'bc')
|
|
44
44
|
.innerJoin('bc.buildings', 'b')
|
|
45
45
|
.innerJoin('b.buildingLevels', 'bl')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-query.js","sourceRoot":"","sources":["../../../server/service/project/project-query.ts"],"names":[],"mappings":";;;;AAAA,+CAA6E;AAC7E,iDAA6D;AAC7D,yDAAgD;AAChD,uCAAmC;AACnC,iDAA+D;AAC/D,6DAA0E;AAC1E,qEAA4D;AAGrD,IAAM,YAAY,GAAlB,MAAM,YAAY;IAEjB,AAAN,KAAK,CAAC,OAAO,CAAY,EAAU,EAAS,OAAwB;QAClE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,OAAO,MAAM,IAAA,qBAAa,EAAC,iBAAO,CAAC,CAAC,OAAO,CAAC;YAC1C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;SACzC,CAAC,CAAA;IACJ,CAAC;IAGK,AAAN,KAAK,CAAC,QAAQ,CAAqB,WAAmB,EAAS,OAAwB;QACrF,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAChC,0DAA0D;QAE1D,MAAM,YAAY,GAAG,MAAM,IAAA,qBAAa,EAAC,iBAAO,CAAC;aAC9C,kBAAkB,CAAC,GAAG,CAAC;aACvB,kBAAkB,CAAC,mBAAmB,EAAE,IAAI,CAAC;aAC7C,KAAK,CAAC,oBAAoB,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;aAClD,OAAO,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;QAClC,8BAA8B;QAC9B,gBAAgB;QAEhB,IAAI,WAAW,EAAE;YACf,WAAW,GAAG,IAAI,WAAW,GAAG,CAAA;YAChC,YAAY,CAAC,QAAQ,CAAC,0BAA0B,EAAE,EAAE,WAAW,EAAE,CAAC,CAAA;SACnE;QAED,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,YAAY,CAAC,eAAe,EAAE,CAAA;QAE3D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACzB,CAAC;IAGK,AAAN,KAAK,CAAC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"project-query.js","sourceRoot":"","sources":["../../../server/service/project/project-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Resolver, Query, FieldResolver, Root, Arg, Ctx } from 'type-graphql'\nimport { Domain, getRepository } from '@things-factory/shell'\nimport { User } from '@things-factory/auth-base'\nimport { Project } from './project'\nimport { InspectionSummary, ProjectList } from './project-type'\nimport { BuildingComplex, InspectionStatus } from '@dssp/building-complex'\nimport { Attachment } from '@things-factory/attachment-base'\n\n@Resolver(Project)\nexport class ProjectQuery {\n @Query(returns => Project!, { nullable: true, description: 'To fetch a Project' })\n async project(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<Project> {\n const { domain } = context.state\n\n return await getRepository(Project).findOne({\n where: { domain: { id: domain.id }, id }\n })\n }\n\n @Query(returns => ProjectList, { description: '프로젝트 리스트' })\n async projects(@Arg('projectName') projectName: string, @Ctx() context: ResolverContext): Promise<ProjectList> {\n const { domain } = context.state\n // const { page = 1, limit = 0 } = params.pagination || {}\n\n const queryBuilder = await getRepository(Project)\n .createQueryBuilder('p')\n .innerJoinAndSelect('p.buildingComplex', 'bc')\n .where('p.domain = :domain', { domain: domain.id })\n .orderBy('p.created_at', 'DESC')\n // .offset((page - 1) * limit)\n // .limit(limit)\n\n if (projectName) {\n projectName = `%${projectName}%`\n queryBuilder.andWhere('p.name LIKE :projectName', { projectName })\n }\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @Query(returns => InspectionSummary, { description: '프로젝트의 검측상태 별 카운트' })\n async inspectionSummary(@Arg('projectId') projectId: string, @Ctx() context: ResolverContext): Promise<InspectionSummary> {\n const { domain } = context.state\n\n const queryBuilder = getRepository(Project)\n .createQueryBuilder('p')\n .select(`COUNT(CASE WHEN bi.status='${InspectionStatus.REQUEST}' THEN 1 ELSE NULL END) AS request`)\n .addSelect(`COUNT(CASE WHEN bi.status='${InspectionStatus.PASS}' THEN 1 ELSE NULL END) AS pass`)\n .addSelect(`COUNT(CASE WHEN bi.status='${InspectionStatus.FAIL}' THEN 1 ELSE NULL END) AS fail`)\n .innerJoin('p.buildingComplex', 'bc')\n .innerJoin('bc.buildings', 'b')\n .innerJoin('b.buildingLevels', 'bl')\n .innerJoin('bl.buildingInspections', 'bi')\n .where('p.domain = :domain', { domain: domain.id })\n .andWhere('p.id = :projectId', { projectId })\n .groupBy('p.id')\n\n const result = (await queryBuilder.getRawOne()) || {}\n return {\n request: result.request || 0,\n pass: result.pass || 0,\n fail: result.fail || 0\n }\n }\n\n @FieldResolver(type => Attachment)\n async mainPhoto(@Root() project: Project): Promise<string | Attachment> {\n const attachment: Attachment = await getRepository(Attachment).findOne({\n where: {\n domain: { id: project.domainId },\n refBy: project.id\n },\n order: { createdAt: 'ASC' }\n })\n\n return attachment\n }\n\n @FieldResolver(type => BuildingComplex)\n async buildingComplex(@Root() project: Project): Promise<BuildingComplex> {\n return await getRepository(BuildingComplex).findOneBy({ id: project.buildingComplexId })\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() project: Project): Promise<Domain> {\n return await getRepository(Domain).findOneBy({ id: project.domainId })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() project: Project): Promise<User> {\n return await getRepository(User).findOneBy({ id: project.updaterId })\n }\n\n @FieldResolver(type => User)\n async creator(@Root() project: Project): Promise<User> {\n return await getRepository(User).findOneBy({ id: project.creatorId })\n }\n}\n"]}
|