@things-factory/transport-base 7.0.0-alpha.8 → 7.0.1-alpha.0

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.
@@ -22,9 +22,7 @@ let TransportDriverQuery = class TransportDriverQuery {
22
22
  .leftJoinAndSelect('TransportDriver.creator', 'Creator')
23
23
  .leftJoinAndSelect('TransportDriver.updater', 'Updater');
24
24
  if ((filters === null || filters === void 0 ? void 0 : filters.length) > 0) {
25
- queryBuilder
26
- .andWhere('Domain.id = :domainId', { domainId: domain.id })
27
- .andWhere('TransportDriver.deletedAt IS NULL');
25
+ queryBuilder.andWhere('Domain.id = :domainId', { domainId: domain.id }).andWhere('TransportDriver.deletedAt IS NULL');
28
26
  }
29
27
  else {
30
28
  queryBuilder.where('TransportDriver.deletedAt IS NULL').andWhere('Domain.id = :domainId', { domainId: domain.id });
@@ -1 +1 @@
1
- {"version":3,"file":"transport-driver-query.js","sourceRoot":"","sources":["../../../server/service/transport-driver/transport-driver-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, Directive, FieldResolver, Query, Resolver, Root } from 'type-graphql'\nimport { EntityManager, IsNull } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Bizplace } from '@things-factory/biz-base'\nimport { buildQuery, Domain, Filter, getRepository, Pagination, Sorting } from '@things-factory/shell'\n\nimport { TransportVehicle } from '../transport-vehicle/transport-vehicle'\nimport { TransportDriver } from './transport-driver'\nimport { TransportDriverList } from './transport-driver-types'\n\n@Resolver(TransportDriver)\nexport class TransportDriverQuery {\n @Directive('@transaction')\n @Directive('@privilege(category: \"transport\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => TransportDriverList)\n async transportDrivers(\n @Ctx() context: ResolverContext,\n @Arg('filters', type => [Filter], { nullable: true }) filters?: Filter[],\n @Arg('pagination', type => Pagination, { nullable: true }) pagination?: Pagination,\n @Arg('sortings', type => [Sorting], { nullable: true }) sortings?: Sorting[]\n ): Promise<TransportDriverList> {\n const { domain, tx } = context.state\n\n const queryBuilder = tx.getRepository(TransportDriver).createQueryBuilder()\n buildQuery(queryBuilder, { filters, pagination, sortings }, context, {\n searchables: ['name', 'userEmail', 'driverCode', 'driverTelNo']\n })\n\n queryBuilder\n .leftJoinAndSelect('TransportDriver.domain', 'Domain')\n .leftJoinAndSelect('TransportDriver.creator', 'Creator')\n .leftJoinAndSelect('TransportDriver.updater', 'Updater')\n\n if (filters?.length > 0) {\n queryBuilder\n .andWhere('Domain.id = :domainId', { domainId: domain.id })\n .andWhere('TransportDriver.deletedAt IS NULL')\n } else {\n queryBuilder.where('TransportDriver.deletedAt IS NULL').andWhere('Domain.id = :domainId', { domainId: domain.id })\n }\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @Directive('@transaction')\n @Directive('@privilege(category: \"transport\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => TransportDriver)\n async transportDriver(\n @Arg('driverCode') driverCode: string,\n @Ctx() context: ResolverContext\n ): Promise<TransportDriver> {\n const { domain, tx } = context.state\n\n return await tx.getRepository(TransportDriver).findOne({\n where: { domain: { id: domain.id }, driverCode, deletedAt: IsNull() }\n })\n }\n\n @Directive('@transaction')\n @Query(returns => TransportDriver)\n async transportDriverByUser(@Ctx() context: ResolverContext): Promise<TransportDriver> {\n const { domain, tx, user }: { domain: Domain; tx: EntityManager; user: User } = context.state\n\n const driver = await tx.getRepository(TransportDriver).findOne({\n where: { domain: { id: domain.id }, user: { id: user.id } }\n })\n\n return driver\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() transportDriver: TransportDriver): Promise<Domain> {\n return await getRepository(Domain).findOneBy({ id: transportDriver.domainId })\n }\n\n @FieldResolver(type => User)\n async user(@Root() transportDriver: TransportDriver): Promise<User> {\n return await getRepository(User).findOneBy({ id: transportDriver.userId })\n }\n\n @FieldResolver(type => Bizplace)\n async bizplace(@Root() transportDriver: TransportDriver): Promise<Bizplace> {\n return await getRepository(Bizplace).findOneBy({ id: transportDriver.bizplaceId })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() transportDriver: TransportDriver): Promise<User> {\n return await getRepository(User).findOneBy({ id: transportDriver.updaterId })\n }\n\n @FieldResolver(type => User)\n async creator(@Root() transportDriver: TransportDriver): Promise<User> {\n return await getRepository(User).findOneBy({ id: transportDriver.creatorId })\n }\n\n @FieldResolver(type => [TransportVehicle])\n async transportVehicles(@Root() transportDriver: TransportDriver): Promise<TransportVehicle[]> {\n return await (\n await getRepository(TransportDriver).findOne({\n where: { id: transportDriver.id },\n relations: ['transportVehicles']\n })\n ).transportVehicles\n }\n}\n"]}
1
+ {"version":3,"file":"transport-driver-query.js","sourceRoot":"","sources":["../../../server/service/transport-driver/transport-driver-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, Directive, FieldResolver, Query, Resolver, Root } from 'type-graphql'\nimport { EntityManager, IsNull } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Bizplace } from '@things-factory/biz-base'\nimport { buildQuery, Domain, Filter, getRepository, Pagination, Sorting } from '@things-factory/shell'\n\nimport { TransportVehicle } from '../transport-vehicle/transport-vehicle'\nimport { TransportDriver } from './transport-driver'\nimport { TransportDriverList } from './transport-driver-types'\n\n@Resolver(TransportDriver)\nexport class TransportDriverQuery {\n @Directive('@transaction')\n @Directive('@privilege(category: \"transport\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => TransportDriverList)\n async transportDrivers(\n @Ctx() context: ResolverContext,\n @Arg('filters', type => [Filter], { nullable: true }) filters?: Filter[],\n @Arg('pagination', type => Pagination, { nullable: true }) pagination?: Pagination,\n @Arg('sortings', type => [Sorting], { nullable: true }) sortings?: Sorting[]\n ): Promise<TransportDriverList> {\n const { domain, tx } = context.state\n\n const queryBuilder = tx.getRepository(TransportDriver).createQueryBuilder()\n buildQuery(queryBuilder, { filters, pagination, sortings }, context, {\n searchables: ['name', 'userEmail', 'driverCode', 'driverTelNo']\n })\n\n queryBuilder\n .leftJoinAndSelect('TransportDriver.domain', 'Domain')\n .leftJoinAndSelect('TransportDriver.creator', 'Creator')\n .leftJoinAndSelect('TransportDriver.updater', 'Updater')\n\n if (filters?.length > 0) {\n queryBuilder.andWhere('Domain.id = :domainId', { domainId: domain.id }).andWhere('TransportDriver.deletedAt IS NULL')\n } else {\n queryBuilder.where('TransportDriver.deletedAt IS NULL').andWhere('Domain.id = :domainId', { domainId: domain.id })\n }\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @Directive('@transaction')\n @Directive('@privilege(category: \"transport\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => TransportDriver)\n async transportDriver(@Arg('driverCode') driverCode: string, @Ctx() context: ResolverContext): Promise<TransportDriver> {\n const { domain, tx } = context.state\n\n return await tx.getRepository(TransportDriver).findOne({\n where: { domain: { id: domain.id }, driverCode, deletedAt: IsNull() }\n })\n }\n\n @Directive('@transaction')\n @Query(returns => TransportDriver)\n async transportDriverByUser(@Ctx() context: ResolverContext): Promise<TransportDriver> {\n const { domain, tx, user }: { domain: Domain; tx?: EntityManager; user: User } = context.state\n\n const driver = await tx.getRepository(TransportDriver).findOne({\n where: { domain: { id: domain.id }, user: { id: user.id } }\n })\n\n return driver\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() transportDriver: TransportDriver): Promise<Domain> {\n return await getRepository(Domain).findOneBy({ id: transportDriver.domainId })\n }\n\n @FieldResolver(type => User)\n async user(@Root() transportDriver: TransportDriver): Promise<User> {\n return await getRepository(User).findOneBy({ id: transportDriver.userId })\n }\n\n @FieldResolver(type => Bizplace)\n async bizplace(@Root() transportDriver: TransportDriver): Promise<Bizplace> {\n return await getRepository(Bizplace).findOneBy({ id: transportDriver.bizplaceId })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() transportDriver: TransportDriver): Promise<User> {\n return await getRepository(User).findOneBy({ id: transportDriver.updaterId })\n }\n\n @FieldResolver(type => User)\n async creator(@Root() transportDriver: TransportDriver): Promise<User> {\n return await getRepository(User).findOneBy({ id: transportDriver.creatorId })\n }\n\n @FieldResolver(type => [TransportVehicle])\n async transportVehicles(@Root() transportDriver: TransportDriver): Promise<TransportVehicle[]> {\n return await (\n await getRepository(TransportDriver).findOne({\n where: { id: transportDriver.id },\n relations: ['transportVehicles']\n })\n ).transportVehicles\n }\n}\n"]}