
import { AnalysisPickingPackingReport } from './analysis-picking-packing-report'
import { AnalysisPickingPackingReportList } from './analysis-picking-packing-report-list'
import { CostingReport } from './costing-report'
import { CostingReportList } from './costing-report-list'
import { CycleCountReport } from './cycle-count-report'
import { CycleCountReportList } from './cycle-count-report-list'
import { InboundOrderDetailsReport } from './inbound-order-details-report'
import { InboundOrderDetailsReportList } from './inbound-order-details-report-list'
import { InboundSerialNumberReport } from './inbound-serial-number-report'
import { InboundSerialNumberReportList } from './inbound-serial-number-report-list'
import { LoadingQcReport } from './loading-qc-report'
import { LoadingQcReportList } from './loading-qc-report-list'
import { ManifestReportList } from './manifest-report-list'
import { ManifestReport } from './manifest-report-type'
import { NonLoadedOrderInventoryReport } from './non-loaded-inventory-report'
import { NonLoadedOrderInventoryReportList } from './non-loaded-inventory-report-list'
import { OutboundOrderDetailsReport } from './outbound-order-details-report'
import { OutboundOrderDetailsReportList } from './outbound-order-details-report-list'
import { OutboundSerialNumberReport } from './outbound-serial-number-report'
import { OutboundSerialNumberReportList } from './outbound-serial-number-report-list'
import { ProductLabelReport } from './product-label-report'
import { ProductLabelReportList } from './product-label-report-list'
import { ReleaseInventoryReport } from './release-inventory-report'
import { ReleaseInventoryReportList } from './release-inventory-report-list'
import { ShortageReportList } from './shortage-report-list'
import { ShortageReport } from './shortage-report-type'
import { BillingModuleReport } from './billing-module-report'
import { BillingModuleReportList } from './billing-module-report-list'
import { OrderVasReport, VasReport } from './vas-report'
import { OrderVasReportList, VasReportList } from './vas-report-list'
import { PgUdfQueryList } from './pg-udf-query-list'

export const Query = `
  inboundSerialNumberReport(filters: [Filter!], pagination: Pagination, sortings: [Sorting!]): InboundSerialNumberReportList @transaction
  outboundSerialNumberReport(filters: [Filter!], pagination: Pagination, sortings: [Sorting!]): OutboundSerialNumberReportList @transaction
  inboundOrderDetailsReport(filters: [Filter!], pagination: Pagination, sortings: [Sorting!]): InboundOrderDetailsReportList @transaction
  outboundOrderDetailsReport(filters: [Filter!], pagination: Pagination, sortings: [Sorting!]): OutboundOrderDetailsReportList @transaction
  productLabelReport(filters: [Filter!], pagination: Pagination, sortings: [Sorting!]): ProductLabelReportList @transaction
  costingReport(filters: [Filter!], pagination: Pagination, sortings: [Sorting!]): CostingReportList @transaction
  releaseInventoryReport(filters: [Filter!], pagination: Pagination, sortings: [Sorting!]): ReleaseInventoryReportList @transaction
  shortageReport(filters: [Filter!], pagination: Pagination, sortings: [Sorting!]):ShortageReportList @transaction
  loadingQcReport(filters: [Filter!], pagination: Pagination, sortings: [Sorting!]): [LoadingQcReport] @transaction
  orderVasReport(filters: [Filter!], pagination: Pagination, sortings: [Sorting!]): OrderVasReportList @transaction
  vasReport(filters: [Filter!], pagination: Pagination, sortings: [Sorting!]): OrderVasReportList @transaction
  analysisPickingPackingReport(filters: [Filter!], pagination: Pagination, sortings: [Sorting!]): AnalysisPickingPackingReportList @transaction
  cycleCountReport(filters: [Filter], pagination: Pagination, sortings: [Sorting], name: String!): CycleCountReportList @transaction
  nonLoadedOrderInventories(filters: [Filter!], pagination: Pagination, sortings: [Sorting!]): NonLoadedOrderInventoryReportList @transaction
  manifestReport(filters: [Filter!], pagination: Pagination, sortings: [Sorting!]): ManifestReportList @transaction
  billingModuleReport(filters: [Filter!], pagination: Pagination, sortings: [Sorting!]): BillingModuleReportList @transaction
  pgUdfQuery(filters: [Filter!]): PgUdfQueryList @transaction
`

export const Types = [
  InboundSerialNumberReport,
  InboundSerialNumberReportList,
  OutboundSerialNumberReport,
  OutboundSerialNumberReportList,
  InboundOrderDetailsReport,
  InboundOrderDetailsReportList,
  OutboundOrderDetailsReport,
  OutboundOrderDetailsReportList,
  ProductLabelReport,
  ProductLabelReportList,
  CostingReport,
  CostingReportList,
  ReleaseInventoryReport,
  ReleaseInventoryReportList,
  ShortageReport,
  ShortageReportList,
  LoadingQcReport,
  LoadingQcReportList,
  OrderVasReport,
  OrderVasReportList,
  VasReport,
  VasReportList,
  AnalysisPickingPackingReport,
  AnalysisPickingPackingReportList,
  CycleCountReport,
  CycleCountReportList,
  NonLoadedOrderInventoryReport,
  NonLoadedOrderInventoryReportList,
  ManifestReport,
  ManifestReportList,
  BillingModuleReport,
  BillingModuleReportList,
  PgUdfQueryList
]
