@floristcloud/api-lib 1.2.117 → 1.2.118

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.
@@ -4,6 +4,7 @@ exports.GetOrderListContractQuery = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const schemas_1 = require("../../schemas");
6
6
  const date_helper_1 = require("../../helpers/date.helper");
7
+ const query_boolean_helper_1 = require("../../helpers/query-boolean.helper");
7
8
  const enum_1 = require("../../enum");
8
9
  const GetOrderListRequestSchema = zod_1.z
9
10
  .object({
@@ -28,6 +29,10 @@ const GetOrderListRequestSchema = zod_1.z
28
29
  // Только заказы, ещё не включённые ни в один счёт на оплату — список для пикера при
29
30
  // выставлении счёта. Комбинируется с остальными критериями обычным AND.
30
31
  withoutPaymentInvoice: zod_1.z.coerce.boolean().optional(),
32
+ // То же для передаточного документа — пикер заказов при выпуске УПД. Здесь `queryBooleanSchema`,
33
+ // а не `z.coerce.boolean()`: в query всегда приходит текст, и `Boolean('false') === true`,
34
+ // то есть флаг соседа невозможно выключить явным значением, только опустив параметр.
35
+ withoutTransferDocument: query_boolean_helper_1.queryBooleanSchema,
31
36
  })
32
37
  .refine(value => {
33
38
  const { startDate, endDate } = value;
@@ -36,17 +36,23 @@ exports.OrderSchema = zod_1.z.object({
36
36
  // Счёт на оплату, в который включён заказ. Сам счёт (номер, файл, статус оплаты) читается
37
37
  // отдельным запросом GET /payment-invoice/:uuid — здесь только ссылка, чтобы не утяжелять список заказов.
38
38
  paymentInvoiceUUID: zod_1.z.uuid().nullable(),
39
+ // Передаточный документ (УПД), в который включён заказ. Тем же приёмом, что и счёт: здесь только
40
+ // ссылка, документ читается через GET /transfer-document/:uuid. Непустое значение означает, что
41
+ // заказ заморожен — состав, статус, доставка, дата отгрузки и скидка ему уже недоступны.
42
+ transferDocumentUUID: zod_1.z.uuid().nullable(),
39
43
  completedAt: zod_1.z.date().nullable(),
40
44
  paymentDueAt: zod_1.z.date().nullable(),
41
45
  createdAt: zod_1.z.date(),
42
46
  updatedAt: zod_1.z.date(),
43
47
  deletedAt: zod_1.z.date().nullable(),
44
48
  });
45
- // Витрина клиента не показывает внутреннюю кухню счетов, поэтому ссылка на счёт сюда не попадает.
49
+ // Витрина клиента не показывает внутреннюю кухню документов, поэтому ссылки на счёт и на УПД
50
+ // сюда не попадают.
46
51
  exports.OrderForClientSchema = exports.OrderSchema.omit({
47
52
  comment: true,
48
53
  tag: true,
49
54
  paymentInvoiceUUID: true,
55
+ transferDocumentUUID: true,
50
56
  });
51
57
  exports.OrderExtendedSchema = exports.OrderSchema.extend({
52
58
  client: client_1.ClientSchema,
@@ -1,6 +1,7 @@
1
1
  import { z } from 'zod';
2
2
  import { OrderExtendedSchema } from '../../schemas';
3
3
  import { dateRangeCheck } from '../../helpers/date.helper';
4
+ import { queryBooleanSchema } from '../../helpers/query-boolean.helper';
4
5
  import { OrderStatusEnum, OrderTypeEnum } from '../../enum';
5
6
 
6
7
  const GetOrderListRequestSchema = z
@@ -26,6 +27,10 @@ const GetOrderListRequestSchema = z
26
27
  // Только заказы, ещё не включённые ни в один счёт на оплату — список для пикера при
27
28
  // выставлении счёта. Комбинируется с остальными критериями обычным AND.
28
29
  withoutPaymentInvoice: z.coerce.boolean().optional(),
30
+ // То же для передаточного документа — пикер заказов при выпуске УПД. Здесь `queryBooleanSchema`,
31
+ // а не `z.coerce.boolean()`: в query всегда приходит текст, и `Boolean('false') === true`,
32
+ // то есть флаг соседа невозможно выключить явным значением, только опустив параметр.
33
+ withoutTransferDocument: queryBooleanSchema,
29
34
  })
30
35
  .refine(
31
36
  value => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@floristcloud/api-lib",
3
- "version": "1.2.117",
3
+ "version": "1.2.118",
4
4
  "description": "",
5
5
  "main": "./build/index.js",
6
6
  "scripts": {
@@ -38,6 +38,10 @@ export const OrderSchema = z.object({
38
38
  // Счёт на оплату, в который включён заказ. Сам счёт (номер, файл, статус оплаты) читается
39
39
  // отдельным запросом GET /payment-invoice/:uuid — здесь только ссылка, чтобы не утяжелять список заказов.
40
40
  paymentInvoiceUUID: z.uuid().nullable(),
41
+ // Передаточный документ (УПД), в который включён заказ. Тем же приёмом, что и счёт: здесь только
42
+ // ссылка, документ читается через GET /transfer-document/:uuid. Непустое значение означает, что
43
+ // заказ заморожен — состав, статус, доставка, дата отгрузки и скидка ему уже недоступны.
44
+ transferDocumentUUID: z.uuid().nullable(),
41
45
 
42
46
  completedAt: z.date().nullable(),
43
47
  paymentDueAt: z.date().nullable(),
@@ -47,11 +51,13 @@ export const OrderSchema = z.object({
47
51
  deletedAt: z.date().nullable(),
48
52
  });
49
53
 
50
- // Витрина клиента не показывает внутреннюю кухню счетов, поэтому ссылка на счёт сюда не попадает.
54
+ // Витрина клиента не показывает внутреннюю кухню документов, поэтому ссылки на счёт и на УПД
55
+ // сюда не попадают.
51
56
  export const OrderForClientSchema = OrderSchema.omit({
52
57
  comment: true,
53
58
  tag: true,
54
59
  paymentInvoiceUUID: true,
60
+ transferDocumentUUID: true,
55
61
  });
56
62
 
57
63
  export const OrderExtendedSchema = OrderSchema.extend({