@zauru-sdk/hooks 1.0.92 → 1.0.94

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.
@@ -80,6 +80,8 @@ const useGetPurchaseOrderGeneralInfo = () => useGetReceptionObject("purchaseOrde
80
80
  exports.useGetPurchaseOrderGeneralInfo = useGetPurchaseOrderGeneralInfo;
81
81
  const useGetPesadas = (purchaseOrder, stocks_only_integer = false) => {
82
82
  const [pesadas, footerPesadas, headersPesadas] = (0, react_2.useMemo)(() => {
83
+ if (!purchaseOrder)
84
+ return [[], {}, []];
83
85
  const tempPesadas = [
84
86
  ...purchaseOrder.purchase_order_details?.map((x, index) => {
85
87
  const parsedReference = x.reference?.split(","); //eg: "reference": "698,25,0", // peso neto, canastas, descuento
@@ -202,30 +204,14 @@ const getPesadasByForm = (formInput) => {
202
204
  id: "",
203
205
  baskets: (0, common_1.toFixedIfNeeded)(tempPesadas?.map((x) => x.baskets).reduce(common_1.reduceAdd, 0)),
204
206
  totalWeight: (0, common_1.toFixedIfNeeded)(tempPesadas?.map((x) => x.totalWeight).reduce(common_1.reduceAdd, 0)),
205
- discount: "-",
206
207
  netWeight: (0, common_1.toFixedIfNeeded)(tempPesadas?.map((x) => Number(x.netWeight)).reduce(common_1.reduceAdd, 0)),
207
208
  weightByBasket: "-",
208
- lbDiscounted: (0, common_1.toFixedIfNeeded)(tempPesadas?.map((x) => Number(x.lbDiscounted)).reduce(common_1.reduceAdd, 0)),
209
- probableUtilization: (0, common_1.toFixedIfNeeded)(tempPesadas
210
- ?.map((x) => Number(x.probableUtilization))
211
- .reduce(common_1.reduceAdd, 0)),
212
209
  };
213
210
  const headers = [
214
211
  { label: "#", name: "id", type: "label", width: 5 },
215
212
  { label: "Canastas", name: "baskets", type: "label" },
216
213
  { label: "Peso báscula", name: "totalWeight", type: "label" },
217
- { label: "Descuento (%)", name: "discount", type: "label" },
218
214
  { label: "Peso Neto", name: "netWeight", type: "label" },
219
- {
220
- label: "Peso Neto - %Rechazo",
221
- name: "probableUtilization",
222
- type: "label",
223
- },
224
- {
225
- label: "Lb o Unidades descontadas",
226
- name: "lbDiscounted",
227
- type: "label",
228
- },
229
215
  {
230
216
  label: "Peso Neto por canasta",
231
217
  name: "weightByBasket",
@@ -237,12 +223,29 @@ const getPesadasByForm = (formInput) => {
237
223
  exports.getPesadasByForm = getPesadasByForm;
238
224
  const useGetBasketDetails = (purchaseOrder) => {
239
225
  const [basketsJoined, footerBasketsJoined, headersBasketsJoined] = (0, react_2.useMemo)(() => {
240
- const bsq = purchaseOrder?.lots
241
- ?.map((x) => {
242
- const basket = (0, common_1.getBasketsSchema)(x.description);
243
- return basket;
244
- })
245
- .flat(2) ?? [];
226
+ if (!purchaseOrder)
227
+ return [[], {}, []];
228
+ const bsq = purchaseOrder?.lots.length > 0
229
+ ? purchaseOrder?.lots
230
+ ?.map((x) => {
231
+ const basket = (0, common_1.getBasketsSchema)(x.description);
232
+ return basket;
233
+ })
234
+ .flat(2)
235
+ : //------- INTENTO IMPRIMIR EL TOTAL DE CANASTAS DEL PURCHASE ORDER DETAILS, PORQUE DEPLANO HUBO UN ERROR EN LA CREACION DE LOS LOTES Y POR ESO VIENE VACIO
236
+ //ESTO SOLO ES UNA CONTINGENCIA PARA QUE POR LO MENOS PUEDAN IMPRIMIR EL NUMERO DE CANASTAS, PERO NO LES ESTARÁ MOSTRANDO EL COLOR
237
+ //--- TODO
238
+ purchaseOrder?.purchase_order_details.length > 0
239
+ ? purchaseOrder?.purchase_order_details
240
+ ?.map((x) => {
241
+ return {
242
+ id: 0,
243
+ color: "-",
244
+ total: Number(x.reference.split(",")[1]) ?? 0,
245
+ };
246
+ })
247
+ .flat(2)
248
+ : [];
246
249
  const bsqToCC = (0, common_1.getBasketsSchema)(purchaseOrder.memo);
247
250
  const joinedBaskets = [];
248
251
  for (let i = 0; i < bsq.length; i++) {
@@ -285,6 +288,12 @@ exports.useGetBasketDetails = useGetBasketDetails;
285
288
  */
286
289
  const getBasketDetailsByForm = (formInput) => {
287
290
  const basketDetailsArray = [];
291
+ if (!formInput)
292
+ return {
293
+ basketDetailsArray,
294
+ totales: {},
295
+ headers: [],
296
+ };
288
297
  // Regex para identificar los campos relevantes
289
298
  const recPattern = /^rec\d+-(.+)$/;
290
299
  const qCPattern = /^qC\d+-(.+)$/;
@@ -300,12 +309,14 @@ const getBasketDetailsByForm = (formInput) => {
300
309
  existingBasket.total += total;
301
310
  }
302
311
  else {
303
- basketDetailsArray.push({
304
- id: basketDetailsArray.length,
305
- total,
306
- color,
307
- cc: 0, // Inicializar cc a 0, se actualizará más adelante si existe
308
- });
312
+ if (total > 0) {
313
+ basketDetailsArray.push({
314
+ id: basketDetailsArray.length,
315
+ total,
316
+ color,
317
+ cc: 0, // Inicializar cc a 0, se actualizará más adelante si existe
318
+ });
319
+ }
309
320
  }
310
321
  }
311
322
  // Comprobar si la clave es un campo "qC" y actualizar el campo cc correspondiente
@@ -339,6 +350,8 @@ const getBasketDetailsByForm = (formInput) => {
339
350
  exports.getBasketDetailsByForm = getBasketDetailsByForm;
340
351
  const useGetProviderNameByPurchaseOrder = (payees, purchaseOrder) => {
341
352
  const providerName = (0, react_2.useMemo)(() => {
353
+ if (!purchaseOrder)
354
+ return null;
342
355
  const provider = payees.find((x) => x.id == purchaseOrder.payee_id);
343
356
  if (provider) {
344
357
  return `<${provider.id_number}> ${provider.tin ? `${provider.tin} | ` : ""}${provider.name}`;
@@ -350,6 +363,8 @@ const useGetProviderNameByPurchaseOrder = (payees, purchaseOrder) => {
350
363
  exports.useGetProviderNameByPurchaseOrder = useGetProviderNameByPurchaseOrder;
351
364
  const useGetItemNameByPurchaseOrder = (items, purchaseOrder) => {
352
365
  const itemName = (0, react_2.useMemo)(() => {
366
+ if (!purchaseOrder)
367
+ return null;
353
368
  if (purchaseOrder.purchase_order_details.length > 0 && items.length > 0) {
354
369
  const item = items.find((x) => x.id == purchaseOrder.purchase_order_details[0].item_id);
355
370
  return `${item?.id} - ${item?.code} - ${item?.name}`;
@@ -361,6 +376,8 @@ const useGetItemNameByPurchaseOrder = (items, purchaseOrder) => {
361
376
  exports.useGetItemNameByPurchaseOrder = useGetItemNameByPurchaseOrder;
362
377
  const useGetItemByPurchaseOrder = (items, purchaseOrder) => {
363
378
  const item = (0, react_2.useMemo)(() => {
379
+ if (!purchaseOrder)
380
+ return null;
364
381
  if (purchaseOrder.purchase_order_details.length > 0 && items.length > 0) {
365
382
  const item = items.find((x) => x.id == purchaseOrder.purchase_order_details[0].item_id);
366
383
  return item;
@@ -80,6 +80,8 @@ const useGetPurchaseOrderGeneralInfo = () => useGetReceptionObject("purchaseOrde
80
80
  exports.useGetPurchaseOrderGeneralInfo = useGetPurchaseOrderGeneralInfo;
81
81
  const useGetPesadas = (purchaseOrder, stocks_only_integer = false) => {
82
82
  const [pesadas, footerPesadas, headersPesadas] = (0, react_2.useMemo)(() => {
83
+ if (!purchaseOrder)
84
+ return [[], {}, []];
83
85
  const tempPesadas = [
84
86
  ...purchaseOrder.purchase_order_details?.map((x, index) => {
85
87
  const parsedReference = x.reference?.split(","); //eg: "reference": "698,25,0", // peso neto, canastas, descuento
@@ -202,30 +204,14 @@ const getPesadasByForm = (formInput) => {
202
204
  id: "",
203
205
  baskets: (0, common_1.toFixedIfNeeded)(tempPesadas?.map((x) => x.baskets).reduce(common_1.reduceAdd, 0)),
204
206
  totalWeight: (0, common_1.toFixedIfNeeded)(tempPesadas?.map((x) => x.totalWeight).reduce(common_1.reduceAdd, 0)),
205
- discount: "-",
206
207
  netWeight: (0, common_1.toFixedIfNeeded)(tempPesadas?.map((x) => Number(x.netWeight)).reduce(common_1.reduceAdd, 0)),
207
208
  weightByBasket: "-",
208
- lbDiscounted: (0, common_1.toFixedIfNeeded)(tempPesadas?.map((x) => Number(x.lbDiscounted)).reduce(common_1.reduceAdd, 0)),
209
- probableUtilization: (0, common_1.toFixedIfNeeded)(tempPesadas
210
- ?.map((x) => Number(x.probableUtilization))
211
- .reduce(common_1.reduceAdd, 0)),
212
209
  };
213
210
  const headers = [
214
211
  { label: "#", name: "id", type: "label", width: 5 },
215
212
  { label: "Canastas", name: "baskets", type: "label" },
216
213
  { label: "Peso báscula", name: "totalWeight", type: "label" },
217
- { label: "Descuento (%)", name: "discount", type: "label" },
218
214
  { label: "Peso Neto", name: "netWeight", type: "label" },
219
- {
220
- label: "Peso Neto - %Rechazo",
221
- name: "probableUtilization",
222
- type: "label",
223
- },
224
- {
225
- label: "Lb o Unidades descontadas",
226
- name: "lbDiscounted",
227
- type: "label",
228
- },
229
215
  {
230
216
  label: "Peso Neto por canasta",
231
217
  name: "weightByBasket",
@@ -237,12 +223,29 @@ const getPesadasByForm = (formInput) => {
237
223
  exports.getPesadasByForm = getPesadasByForm;
238
224
  const useGetBasketDetails = (purchaseOrder) => {
239
225
  const [basketsJoined, footerBasketsJoined, headersBasketsJoined] = (0, react_2.useMemo)(() => {
240
- const bsq = purchaseOrder?.lots
241
- ?.map((x) => {
242
- const basket = (0, common_1.getBasketsSchema)(x.description);
243
- return basket;
244
- })
245
- .flat(2) ?? [];
226
+ if (!purchaseOrder)
227
+ return [[], {}, []];
228
+ const bsq = purchaseOrder?.lots.length > 0
229
+ ? purchaseOrder?.lots
230
+ ?.map((x) => {
231
+ const basket = (0, common_1.getBasketsSchema)(x.description);
232
+ return basket;
233
+ })
234
+ .flat(2)
235
+ : //------- INTENTO IMPRIMIR EL TOTAL DE CANASTAS DEL PURCHASE ORDER DETAILS, PORQUE DEPLANO HUBO UN ERROR EN LA CREACION DE LOS LOTES Y POR ESO VIENE VACIO
236
+ //ESTO SOLO ES UNA CONTINGENCIA PARA QUE POR LO MENOS PUEDAN IMPRIMIR EL NUMERO DE CANASTAS, PERO NO LES ESTARÁ MOSTRANDO EL COLOR
237
+ //--- TODO
238
+ purchaseOrder?.purchase_order_details.length > 0
239
+ ? purchaseOrder?.purchase_order_details
240
+ ?.map((x) => {
241
+ return {
242
+ id: 0,
243
+ color: "-",
244
+ total: Number(x.reference.split(",")[1]) ?? 0,
245
+ };
246
+ })
247
+ .flat(2)
248
+ : [];
246
249
  const bsqToCC = (0, common_1.getBasketsSchema)(purchaseOrder.memo);
247
250
  const joinedBaskets = [];
248
251
  for (let i = 0; i < bsq.length; i++) {
@@ -285,6 +288,12 @@ exports.useGetBasketDetails = useGetBasketDetails;
285
288
  */
286
289
  const getBasketDetailsByForm = (formInput) => {
287
290
  const basketDetailsArray = [];
291
+ if (!formInput)
292
+ return {
293
+ basketDetailsArray,
294
+ totales: {},
295
+ headers: [],
296
+ };
288
297
  // Regex para identificar los campos relevantes
289
298
  const recPattern = /^rec\d+-(.+)$/;
290
299
  const qCPattern = /^qC\d+-(.+)$/;
@@ -300,12 +309,14 @@ const getBasketDetailsByForm = (formInput) => {
300
309
  existingBasket.total += total;
301
310
  }
302
311
  else {
303
- basketDetailsArray.push({
304
- id: basketDetailsArray.length,
305
- total,
306
- color,
307
- cc: 0, // Inicializar cc a 0, se actualizará más adelante si existe
308
- });
312
+ if (total > 0) {
313
+ basketDetailsArray.push({
314
+ id: basketDetailsArray.length,
315
+ total,
316
+ color,
317
+ cc: 0, // Inicializar cc a 0, se actualizará más adelante si existe
318
+ });
319
+ }
309
320
  }
310
321
  }
311
322
  // Comprobar si la clave es un campo "qC" y actualizar el campo cc correspondiente
@@ -339,6 +350,8 @@ const getBasketDetailsByForm = (formInput) => {
339
350
  exports.getBasketDetailsByForm = getBasketDetailsByForm;
340
351
  const useGetProviderNameByPurchaseOrder = (payees, purchaseOrder) => {
341
352
  const providerName = (0, react_2.useMemo)(() => {
353
+ if (!purchaseOrder)
354
+ return null;
342
355
  const provider = payees.find((x) => x.id == purchaseOrder.payee_id);
343
356
  if (provider) {
344
357
  return `<${provider.id_number}> ${provider.tin ? `${provider.tin} | ` : ""}${provider.name}`;
@@ -350,6 +363,8 @@ const useGetProviderNameByPurchaseOrder = (payees, purchaseOrder) => {
350
363
  exports.useGetProviderNameByPurchaseOrder = useGetProviderNameByPurchaseOrder;
351
364
  const useGetItemNameByPurchaseOrder = (items, purchaseOrder) => {
352
365
  const itemName = (0, react_2.useMemo)(() => {
366
+ if (!purchaseOrder)
367
+ return null;
353
368
  if (purchaseOrder.purchase_order_details.length > 0 && items.length > 0) {
354
369
  const item = items.find((x) => x.id == purchaseOrder.purchase_order_details[0].item_id);
355
370
  return `${item?.id} - ${item?.code} - ${item?.name}`;
@@ -361,6 +376,8 @@ const useGetItemNameByPurchaseOrder = (items, purchaseOrder) => {
361
376
  exports.useGetItemNameByPurchaseOrder = useGetItemNameByPurchaseOrder;
362
377
  const useGetItemByPurchaseOrder = (items, purchaseOrder) => {
363
378
  const item = (0, react_2.useMemo)(() => {
379
+ if (!purchaseOrder)
380
+ return null;
364
381
  if (purchaseOrder.purchase_order_details.length > 0 && items.length > 0) {
365
382
  const item = items.find((x) => x.id == purchaseOrder.purchase_order_details[0].item_id);
366
383
  return item;
@@ -1,4 +1,4 @@
1
- import { ItemAssociatedLots, ItemGraphQL, NewPurchaseOrderResponse, PayeeGraphQL, PurchaseOrderGeneralInfo, PurchaseOrderGraphQL, QueueFormReceptionWebAppTable, RejectionWebAppTableObject, WebAppRowGraphQL, GenericDynamicTableColumn } from "@zauru-sdk/types";
1
+ import { ItemAssociatedLots, ItemGraphQL, NewPurchaseOrderResponse, PayeeGraphQL, PurchaseOrderGraphQL, WebAppRowGraphQL, GenericDynamicTableColumn, QueueFormReceptionWebAppTable, RejectionWebAppTableObject, PurchaseOrderGeneralInfo } from "@zauru-sdk/types";
2
2
  type ConfigProps = {
3
3
  online?: boolean;
4
4
  wheres?: string[];
@@ -55,7 +55,7 @@ type PesadaFooter = {
55
55
  netWeight: string;
56
56
  weightByBasket: string;
57
57
  };
58
- export declare const useGetPesadas: (purchaseOrder: PurchaseOrderGraphQL, stocks_only_integer?: boolean) => [PesadaBody[], PesadaFooter, GenericDynamicTableColumn[]];
58
+ export declare const useGetPesadas: (purchaseOrder?: PurchaseOrderGraphQL, stocks_only_integer?: boolean) => [PesadaBody[], PesadaFooter, GenericDynamicTableColumn[]];
59
59
  /**
60
60
  * Sirve para imprimir offline
61
61
  * @param formInput
@@ -67,11 +67,8 @@ export declare const getPesadasByForm: (formInput: FormInput) => {
67
67
  id: string;
68
68
  baskets: string;
69
69
  totalWeight: string;
70
- discount: string;
71
70
  netWeight: string;
72
71
  weightByBasket: string;
73
- lbDiscounted: string;
74
- probableUtilization: string;
75
72
  };
76
73
  headers: GenericDynamicTableColumn[];
77
74
  };
@@ -86,7 +83,7 @@ type BasketDetailsFooter = {
86
83
  total: string;
87
84
  cc: number;
88
85
  };
89
- export declare const useGetBasketDetails: (purchaseOrder: PurchaseOrderGraphQL) => [BasketDetailsBody[], BasketDetailsFooter, GenericDynamicTableColumn[]];
86
+ export declare const useGetBasketDetails: (purchaseOrder?: PurchaseOrderGraphQL) => [BasketDetailsBody[], BasketDetailsFooter, GenericDynamicTableColumn[]];
90
87
  /**
91
88
  * Para imprimir en modo offline
92
89
  * @param formInput
@@ -97,7 +94,7 @@ export declare const getBasketDetailsByForm: (formInput: FormInput) => {
97
94
  totales: BasketDetailsFooter;
98
95
  headers: GenericDynamicTableColumn[];
99
96
  };
100
- export declare const useGetProviderNameByPurchaseOrder: (payees: PayeeGraphQL[], purchaseOrder: PurchaseOrderGraphQL) => string;
101
- export declare const useGetItemNameByPurchaseOrder: (items: ItemGraphQL[], purchaseOrder: PurchaseOrderGraphQL) => string;
102
- export declare const useGetItemByPurchaseOrder: (items: ItemGraphQL[], purchaseOrder: PurchaseOrderGraphQL) => ItemGraphQL;
97
+ export declare const useGetProviderNameByPurchaseOrder: (payees: PayeeGraphQL[], purchaseOrder?: PurchaseOrderGraphQL) => string;
98
+ export declare const useGetItemNameByPurchaseOrder: (items: ItemGraphQL[], purchaseOrder?: PurchaseOrderGraphQL) => string;
99
+ export declare const useGetItemByPurchaseOrder: (items: ItemGraphQL[], purchaseOrder?: PurchaseOrderGraphQL) => ItemGraphQL;
103
100
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zauru-sdk/hooks",
3
- "version": "1.0.92",
3
+ "version": "1.0.94",
4
4
  "description": "Hooks reutilizables dentro de las webapps de Zauru.",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",
@@ -34,5 +34,5 @@
34
34
  "react": "^18.2.0",
35
35
  "react-dom": "^18.2.0"
36
36
  },
37
- "gitHead": "6b061d22b3981be4f09b16fdf1696b69e8c9c1be"
37
+ "gitHead": "9bb9ad806317e995dcb86262ed37ba73cd276c07"
38
38
  }