All files / app/src/features/validator/lib operation-stases.ts

100% Statements 111/111
100% Branches 0/0
100% Functions 0/0
100% Lines 111/111

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 1151x       1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x  
import { AffiliationType, OperationType } from '@/entities/accounting-object/lib/types'
import { OperationsStatuses } from '../validate-objects/lib/types'
import { PipeStateEnum, PipeStatusEnum } from '@/entities/pipe/lib/types'
 
export const OPERATIONS_STATUSES: OperationsStatuses = {
  [OperationType.ACCEPTANCES]: {
    availableStatuses: [PipeStatusEnum.WAITING],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.DEFECTED, PipeStateEnum.USED, PipeStateEnum.RESTORED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.MOVEMENTS]: {
    availableStatuses: [PipeStatusEnum.RECEIVED, PipeStatusEnum.UNKNOWN],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.DEFECTED, PipeStateEnum.USED, PipeStateEnum.RESTORED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.SHIPMENT]: {
    availableStatuses: [PipeStatusEnum.RECEIVED, PipeStatusEnum.UNKNOWN],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.DEFECTED, PipeStateEnum.USED, PipeStateEnum.RESTORED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.RETURN_TO_OWNERS]: {
    availableStatuses: [PipeStatusEnum.SHIPPED, PipeStatusEnum.WAITING, PipeStatusEnum.RECEIVED],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.DEFECTED, PipeStateEnum.USED, PipeStateEnum.RESTORED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.RETURN_TO_WAREHOUSE]: {
    availableStatuses: [PipeStatusEnum.SHIPPED, PipeStatusEnum.SOLD],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.DEFECTED, PipeStateEnum.USED, PipeStateEnum.RESTORED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.REALIZATION]: {
    availableStatuses: [PipeStatusEnum.RECEIVED, PipeStatusEnum.UNKNOWN, PipeStatusEnum.SHIPPED],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.DEFECTED, PipeStateEnum.USED, PipeStateEnum.RESTORED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.INVENTORY]: {
    availableStatuses: [PipeStatusEnum.RECEIVED, PipeStatusEnum.SHIPPED],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.DEFECTED, PipeStateEnum.USED, PipeStateEnum.RESTORED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.INSPECTION]: {
    availableStatuses: [PipeStatusEnum.RECEIVED, PipeStatusEnum.UNKNOWN, PipeStatusEnum.SHIPPED],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.DEFECTED, PipeStateEnum.USED, PipeStateEnum.RESTORED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.REPAIR]: {
    availableStatuses: [PipeStatusEnum.RECEIVED, PipeStatusEnum.SHIPPED],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.DEFECTED, PipeStateEnum.USED, PipeStateEnum.RESTORED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.REJECTION]: {
    availableStatuses: [
      PipeStatusEnum.RECEIVED,
      PipeStatusEnum.SHIPPED,
      PipeStatusEnum.SOLD,
      PipeStatusEnum.RETURNED_TO_OWNER,
    ],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.USED, PipeStateEnum.RESTORED, PipeStateEnum.DEFECTED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.MEASURE]: {
    availableStatuses: [PipeStatusEnum.RECEIVED, PipeStatusEnum.UNKNOWN, PipeStatusEnum.WAITING],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.USED, PipeStateEnum.RESTORED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.UNPACK]: {
    availableStatuses: [PipeStatusEnum.RECEIVED, PipeStatusEnum.UNKNOWN, PipeStatusEnum.SHIPPED],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.DEFECTED, PipeStateEnum.USED, PipeStateEnum.RESTORED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.PACK]: {
    availableStatuses: [PipeStatusEnum.RECEIVED, PipeStatusEnum.UNKNOWN, PipeStatusEnum.SHIPPED],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.DEFECTED, PipeStateEnum.USED, PipeStateEnum.RESTORED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.ASSEMBLING]: {
    availableStatuses: [PipeStatusEnum.RECEIVED, PipeStatusEnum.UNKNOWN],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.USED, PipeStateEnum.RESTORED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.SUMMATION]: {
    availableStatuses: [PipeStatusEnum.RECEIVED, PipeStatusEnum.UNKNOWN],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.USED, PipeStateEnum.RESTORED, PipeStateEnum.DEFECTED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.ARCHIVING]: {
    availableStatuses: [PipeStatusEnum.SHIPPED, PipeStatusEnum.RETURNED_TO_OWNER, PipeStatusEnum.SOLD],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.USED, PipeStateEnum.RESTORED, PipeStateEnum.DEFECTED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.UPLOAD_TO_EXCEL]: {
    availableStatuses: [PipeStatusEnum.RECEIVED, PipeStatusEnum.UNKNOWN, PipeStatusEnum.WAITING],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.USED, PipeStateEnum.RESTORED, PipeStateEnum.DEFECTED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.EDIT]: {
    availableStatuses: [
      PipeStatusEnum.RECEIVED,
      PipeStatusEnum.UNKNOWN,
      PipeStatusEnum.WAITING,
      PipeStatusEnum.SHIPPED,
      PipeStatusEnum.SOLD,
      PipeStatusEnum.ARCHIVED,
      PipeStatusEnum.RETURNED_TO_OWNER,
    ],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.USED, PipeStateEnum.RESTORED, PipeStateEnum.DEFECTED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
  [OperationType.DELETE]: {
    availableStatuses: [PipeStatusEnum.RECEIVED, PipeStatusEnum.UNKNOWN, PipeStatusEnum.WAITING],
    availableStates: [PipeStateEnum.NEW, PipeStateEnum.USED, PipeStateEnum.RESTORED, PipeStateEnum.DEFECTED],
    availableOwn: [AffiliationType.Own, AffiliationType.Client],
  },
}