contentoh-components-library 21.5.73 → 21.5.75
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.
- package/dist/components/pages/RetailerProductEdition/context/provider-product-edition.context.js +160 -67
- package/dist/components/pages/RetailerProductEdition/context/reducers/product.js +52 -1
- package/package.json +1 -1
- package/src/components/pages/RetailerProductEdition/context/provider-product-edition.context.jsx +67 -0
- package/src/components/pages/RetailerProductEdition/context/reducers/product.js +51 -0
package/dist/components/pages/RetailerProductEdition/context/provider-product-edition.context.js
CHANGED
|
@@ -35,6 +35,8 @@ var _errorModal = _interopRequireDefault(require("../../../../assets/images/gene
|
|
|
35
35
|
|
|
36
36
|
var _utils = require("../utils");
|
|
37
37
|
|
|
38
|
+
var _data = require("../../../../global-files/data");
|
|
39
|
+
|
|
38
40
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
39
41
|
|
|
40
42
|
var _excluded = ["src"],
|
|
@@ -146,6 +148,10 @@ var ProviderProductEditionProvider = function ProviderProductEditionProvider(_re
|
|
|
146
148
|
})
|
|
147
149
|
});
|
|
148
150
|
sessionStorage.setItem("productSelected", JSON.stringify(updatedProduct));
|
|
151
|
+
dispatch({
|
|
152
|
+
type: "UPDATE_DESCRIPTION_STATUS",
|
|
153
|
+
payload: newStatus
|
|
154
|
+
});
|
|
149
155
|
dispatch({
|
|
150
156
|
type: "SET_SERVICES_DATA",
|
|
151
157
|
payload: (state.services_data || []).map(function (srv) {
|
|
@@ -297,6 +303,10 @@ var ProviderProductEditionProvider = function ProviderProductEditionProvider(_re
|
|
|
297
303
|
})
|
|
298
304
|
});
|
|
299
305
|
sessionStorage.setItem("productSelected", JSON.stringify(updatedProduct));
|
|
306
|
+
dispatch({
|
|
307
|
+
type: "UPDATE_DATASHEET_STATUS",
|
|
308
|
+
payload: newStatus
|
|
309
|
+
});
|
|
300
310
|
dispatch({
|
|
301
311
|
type: "SET_SERVICES_DATA",
|
|
302
312
|
payload: (state.services_data || []).map(function (srv) {
|
|
@@ -364,7 +374,7 @@ var ProviderProductEditionProvider = function ProviderProductEditionProvider(_re
|
|
|
364
374
|
var _ref4 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(token) {
|
|
365
375
|
var _state$images_values, _state$product9, _state$product10, _state$product11, _data$articleData, _data$updateImages;
|
|
366
376
|
|
|
367
|
-
var updatedImages, attrForImgs, generalAttrs, retailerKey, retailerAttrs, mergedAttrs, data, valid, promiseArray, res, imageBody, newStatus, _state$product12, productFromLocalStorage, updatedProduct;
|
|
377
|
+
var updatedImages, attrForImgs, generalAttrs, retailerKey, retailerAttrs, mergedAttrs, data, valid, promiseArray, res, imageBody, newStatus, _state$product12, productFromLocalStorage, updatedProduct, _freshImages$values, _state$product13, id_article, version, _state$active_retaile5, category, id_category, id_retailer, imagesRes, freshImages, orderMap, orderedValues, filteredValues;
|
|
368
378
|
|
|
369
379
|
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
370
380
|
while (1) {
|
|
@@ -426,7 +436,7 @@ var ProviderProductEditionProvider = function ProviderProductEditionProvider(_re
|
|
|
426
436
|
});
|
|
427
437
|
|
|
428
438
|
if (!valid) {
|
|
429
|
-
_context3.next =
|
|
439
|
+
_context3.next = 61;
|
|
430
440
|
break;
|
|
431
441
|
}
|
|
432
442
|
|
|
@@ -485,60 +495,134 @@ var ProviderProductEditionProvider = function ProviderProductEditionProvider(_re
|
|
|
485
495
|
case 24:
|
|
486
496
|
res = _context3.sent;
|
|
487
497
|
|
|
488
|
-
if (res.data.statusCode === 200) {
|
|
489
|
-
|
|
498
|
+
if (!(res.data.statusCode === 200)) {
|
|
499
|
+
_context3.next = 49;
|
|
500
|
+
break;
|
|
501
|
+
}
|
|
502
|
+
|
|
503
|
+
// Limpiar las imágenes actualizadas
|
|
504
|
+
dispatch({
|
|
505
|
+
type: "SET_UPDATED_IMAGES_VALUES",
|
|
506
|
+
payload: []
|
|
507
|
+
});
|
|
508
|
+
imageBody = JSON.parse(res.data.body);
|
|
509
|
+
newStatus = imageBody === null || imageBody === void 0 ? void 0 : imageBody.newStatus;
|
|
510
|
+
|
|
511
|
+
if (newStatus) {
|
|
512
|
+
productFromLocalStorage = JSON.parse(sessionStorage.getItem("productSelected"));
|
|
513
|
+
updatedProduct = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, productFromLocalStorage || state.product), {}, {
|
|
514
|
+
images_status: newStatus,
|
|
515
|
+
statusByRetailer: ((productFromLocalStorage === null || productFromLocalStorage === void 0 ? void 0 : productFromLocalStorage.statusByRetailer) || ((_state$product12 = state.product) === null || _state$product12 === void 0 ? void 0 : _state$product12.statusByRetailer) || []).map(function (retailerStatus) {
|
|
516
|
+
return retailerStatus.service === "images" ? (0, _objectSpread2.default)((0, _objectSpread2.default)({}, retailerStatus), {}, {
|
|
517
|
+
status: newStatus
|
|
518
|
+
}) : retailerStatus;
|
|
519
|
+
})
|
|
520
|
+
});
|
|
521
|
+
sessionStorage.setItem("productSelected", JSON.stringify(updatedProduct));
|
|
490
522
|
dispatch({
|
|
491
|
-
type: "
|
|
492
|
-
payload:
|
|
523
|
+
type: "UPDATE_IMAGES_STATUS",
|
|
524
|
+
payload: newStatus
|
|
493
525
|
});
|
|
494
|
-
|
|
495
|
-
|
|
526
|
+
dispatch({
|
|
527
|
+
type: "SET_SERVICES_DATA",
|
|
528
|
+
payload: (state.services_data || []).map(function (srv) {
|
|
529
|
+
var _state$active_retaile4;
|
|
496
530
|
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
status: newStatus
|
|
504
|
-
}) : retailerStatus;
|
|
505
|
-
})
|
|
506
|
-
});
|
|
507
|
-
sessionStorage.setItem("productSelected", JSON.stringify(updatedProduct));
|
|
508
|
-
dispatch({
|
|
509
|
-
type: "SET_SERVICES_DATA",
|
|
510
|
-
payload: (state.services_data || []).map(function (srv) {
|
|
511
|
-
var _state$active_retaile4;
|
|
531
|
+
return srv.service === "images" && srv.id_retailer === ((_state$active_retaile4 = state.active_retailer) === null || _state$active_retaile4 === void 0 ? void 0 : _state$active_retaile4.id_retailer) ? (0, _objectSpread2.default)((0, _objectSpread2.default)({}, srv), {}, {
|
|
532
|
+
status: newStatus
|
|
533
|
+
}) : srv;
|
|
534
|
+
})
|
|
535
|
+
});
|
|
536
|
+
} // Refrescar images_values con datos reales del backend
|
|
512
537
|
|
|
513
|
-
return srv.service === "images" && srv.id_retailer === ((_state$active_retaile4 = state.active_retailer) === null || _state$active_retaile4 === void 0 ? void 0 : _state$active_retaile4.id_retailer) ? (0, _objectSpread2.default)((0, _objectSpread2.default)({}, srv), {}, {
|
|
514
|
-
status: newStatus
|
|
515
|
-
}) : srv;
|
|
516
|
-
})
|
|
517
|
-
});
|
|
518
|
-
} // Mostrar modal de éxito
|
|
519
538
|
|
|
539
|
+
_context3.prev = 30;
|
|
540
|
+
_state$product13 = state.product, id_article = _state$product13.id_article, version = _state$product13.version;
|
|
541
|
+
_state$active_retaile5 = state.active_retailer, category = _state$active_retaile5.category, id_category = _state$active_retaile5.id_category, id_retailer = _state$active_retaile5.id_retailer;
|
|
542
|
+
_context3.next = 35;
|
|
543
|
+
return _axios.default.post("".concat(process.env.REACT_APP_ARTICLE_DATA_IMAGES_ENDPOINT, "?articleId=").concat(id_article, "&version=").concat(version), {
|
|
544
|
+
category: category,
|
|
545
|
+
retailersList: [id_retailer]
|
|
546
|
+
}, {
|
|
547
|
+
headers: {
|
|
548
|
+
Authorization: token
|
|
549
|
+
}
|
|
550
|
+
});
|
|
520
551
|
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
552
|
+
case 35:
|
|
553
|
+
imagesRes = _context3.sent;
|
|
554
|
+
freshImages = JSON.parse(imagesRes.data.body).data;
|
|
555
|
+
freshImages.values = freshImages === null || freshImages === void 0 ? void 0 : (_freshImages$values = freshImages.values) === null || _freshImages$values === void 0 ? void 0 : _freshImages$values.map(function (value) {
|
|
556
|
+
var _freshImages$inputs$f;
|
|
557
|
+
|
|
558
|
+
value.name = (_freshImages$inputs$f = freshImages.inputs.find(function (e) {
|
|
559
|
+
return e.id === value.image_id;
|
|
560
|
+
})) === null || _freshImages$inputs$f === void 0 ? void 0 : _freshImages$inputs$f.name;
|
|
561
|
+
return (0, _data.getImage)(value);
|
|
562
|
+
});
|
|
563
|
+
orderMap = freshImages.inputsByRetailer.flat().reduce(function (acc, item) {
|
|
564
|
+
acc[item.id_image] = item.order;
|
|
565
|
+
return acc;
|
|
566
|
+
}, {});
|
|
567
|
+
orderedValues = (0, _toConsumableArray2.default)(freshImages.values).sort(function (a, b) {
|
|
568
|
+
var _orderMap$a$image_id, _orderMap$b$image_id;
|
|
569
|
+
|
|
570
|
+
var orderA = (_orderMap$a$image_id = orderMap[a.image_id]) !== null && _orderMap$a$image_id !== void 0 ? _orderMap$a$image_id : Number.MAX_SAFE_INTEGER;
|
|
571
|
+
var orderB = (_orderMap$b$image_id = orderMap[b.image_id]) !== null && _orderMap$b$image_id !== void 0 ? _orderMap$b$image_id : Number.MAX_SAFE_INTEGER;
|
|
572
|
+
return orderA - orderB;
|
|
573
|
+
});
|
|
574
|
+
filteredValues = freshImages.values.filter(function (value) {
|
|
575
|
+
return freshImages.inputsByRetailer.some(function (retailerInput) {
|
|
576
|
+
return retailerInput.some(function (input) {
|
|
577
|
+
return input.id_retailer === id_retailer && input.id_image === value.image_id;
|
|
578
|
+
});
|
|
529
579
|
});
|
|
530
|
-
}
|
|
580
|
+
});
|
|
581
|
+
dispatch({
|
|
582
|
+
type: "SET_IMAGES_VALUES",
|
|
583
|
+
payload: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, freshImages), {}, {
|
|
584
|
+
values: filteredValues
|
|
585
|
+
})
|
|
586
|
+
});
|
|
587
|
+
dispatch({
|
|
588
|
+
type: "SET_SERVICES",
|
|
589
|
+
payload: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, state.services), {}, {
|
|
590
|
+
images: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, freshImages), {}, {
|
|
591
|
+
values: orderedValues
|
|
592
|
+
})
|
|
593
|
+
})
|
|
594
|
+
});
|
|
595
|
+
_context3.next = 48;
|
|
596
|
+
break;
|
|
597
|
+
|
|
598
|
+
case 45:
|
|
599
|
+
_context3.prev = 45;
|
|
600
|
+
_context3.t0 = _context3["catch"](30);
|
|
601
|
+
console.log("Error al refrescar images_values:", _context3.t0);
|
|
531
602
|
|
|
532
|
-
|
|
603
|
+
case 48:
|
|
604
|
+
// Mostrar modal de éxito
|
|
605
|
+
dispatch({
|
|
606
|
+
type: "SET_MODAL",
|
|
607
|
+
payload: {
|
|
608
|
+
show: true,
|
|
609
|
+
title: "",
|
|
610
|
+
message: "Imágenes guardadas con éxito",
|
|
611
|
+
image: _genericModalCheck.default
|
|
612
|
+
}
|
|
613
|
+
});
|
|
614
|
+
|
|
615
|
+
case 49:
|
|
616
|
+
_context3.next = 56;
|
|
533
617
|
break;
|
|
534
618
|
|
|
535
|
-
case
|
|
536
|
-
_context3.prev =
|
|
537
|
-
_context3.
|
|
538
|
-
console.log(_context3.
|
|
619
|
+
case 51:
|
|
620
|
+
_context3.prev = 51;
|
|
621
|
+
_context3.t1 = _context3["catch"](16);
|
|
622
|
+
console.log(_context3.t1);
|
|
539
623
|
dispatch({
|
|
540
624
|
type: "SET_ERRORS",
|
|
541
|
-
payload: [].concat((0, _toConsumableArray2.default)(state.errors), [_context3.
|
|
625
|
+
payload: [].concat((0, _toConsumableArray2.default)(state.errors), [_context3.t1])
|
|
542
626
|
});
|
|
543
627
|
dispatch({
|
|
544
628
|
type: "SET_MODAL",
|
|
@@ -550,19 +634,19 @@ var ProviderProductEditionProvider = function ProviderProductEditionProvider(_re
|
|
|
550
634
|
}
|
|
551
635
|
});
|
|
552
636
|
|
|
553
|
-
case
|
|
554
|
-
_context3.prev =
|
|
637
|
+
case 56:
|
|
638
|
+
_context3.prev = 56;
|
|
555
639
|
dispatch({
|
|
556
640
|
type: "SET_SAVING",
|
|
557
641
|
payload: false
|
|
558
642
|
});
|
|
559
|
-
return _context3.finish(
|
|
643
|
+
return _context3.finish(56);
|
|
560
644
|
|
|
561
|
-
case
|
|
562
|
-
_context3.next =
|
|
645
|
+
case 59:
|
|
646
|
+
_context3.next = 62;
|
|
563
647
|
break;
|
|
564
648
|
|
|
565
|
-
case
|
|
649
|
+
case 61:
|
|
566
650
|
dispatch({
|
|
567
651
|
type: "SET_MODAL",
|
|
568
652
|
payload: {
|
|
@@ -573,12 +657,12 @@ var ProviderProductEditionProvider = function ProviderProductEditionProvider(_re
|
|
|
573
657
|
}
|
|
574
658
|
});
|
|
575
659
|
|
|
576
|
-
case
|
|
660
|
+
case 62:
|
|
577
661
|
case "end":
|
|
578
662
|
return _context3.stop();
|
|
579
663
|
}
|
|
580
664
|
}
|
|
581
|
-
}, _callee3, null, [[16,
|
|
665
|
+
}, _callee3, null, [[16, 51, 56, 59], [30, 45]]);
|
|
582
666
|
}));
|
|
583
667
|
|
|
584
668
|
return function updateImages(_x3) {
|
|
@@ -588,9 +672,9 @@ var ProviderProductEditionProvider = function ProviderProductEditionProvider(_re
|
|
|
588
672
|
|
|
589
673
|
var saveImageAttrs = /*#__PURE__*/function () {
|
|
590
674
|
var _ref7 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(token) {
|
|
591
|
-
var _state$images_values$, _state$images_values2, _state$images_values3, _state$
|
|
675
|
+
var _state$images_values$, _state$images_values2, _state$images_values3, _state$product14, _state$product15, _state$product16;
|
|
592
676
|
|
|
593
|
-
var activeImage, attrForImgs, data, _state$
|
|
677
|
+
var activeImage, attrForImgs, data, _state$product17, _state$product18, res, attrBody, newStatus, _state$product19, productFromLocalStorage, updatedProduct;
|
|
594
678
|
|
|
595
679
|
return _regenerator.default.wrap(function _callee4$(_context4) {
|
|
596
680
|
while (1) {
|
|
@@ -611,7 +695,7 @@ var ProviderProductEditionProvider = function ProviderProductEditionProvider(_re
|
|
|
611
695
|
activeImage = state.images_values.values[state.current_image];
|
|
612
696
|
attrForImgs = (_state$images_values$ = (_state$images_values2 = state.images_values) === null || _state$images_values2 === void 0 ? void 0 : (_state$images_values3 = _state$images_values2.attrForImgs) === null || _state$images_values3 === void 0 ? void 0 : _state$images_values3.general) !== null && _state$images_values$ !== void 0 ? _state$images_values$ : [];
|
|
613
697
|
data = {
|
|
614
|
-
articleId: (_state$
|
|
698
|
+
articleId: (_state$product14 = state.product) === null || _state$product14 === void 0 ? void 0 : _state$product14.id_article,
|
|
615
699
|
attrReqImgs: attrForImgs.map(function (e) {
|
|
616
700
|
var _e$value2;
|
|
617
701
|
|
|
@@ -624,8 +708,8 @@ var ProviderProductEditionProvider = function ProviderProductEditionProvider(_re
|
|
|
624
708
|
updateImages: activeImage ? [activeImage] : []
|
|
625
709
|
};
|
|
626
710
|
|
|
627
|
-
if ((_state$
|
|
628
|
-
data.orderId = ((_state$
|
|
711
|
+
if ((_state$product15 = state.product) !== null && _state$product15 !== void 0 && _state$product15.orderId || (_state$product16 = state.product) !== null && _state$product16 !== void 0 && _state$product16.id_order) {
|
|
712
|
+
data.orderId = ((_state$product17 = state.product) === null || _state$product17 === void 0 ? void 0 : _state$product17.orderId) || ((_state$product18 = state.product) === null || _state$product18 === void 0 ? void 0 : _state$product18.id_order);
|
|
629
713
|
}
|
|
630
714
|
|
|
631
715
|
_context4.prev = 7;
|
|
@@ -655,19 +739,23 @@ var ProviderProductEditionProvider = function ProviderProductEditionProvider(_re
|
|
|
655
739
|
productFromLocalStorage = JSON.parse(sessionStorage.getItem("productSelected"));
|
|
656
740
|
updatedProduct = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, productFromLocalStorage || state.product), {}, {
|
|
657
741
|
images_status: newStatus,
|
|
658
|
-
statusByRetailer: ((productFromLocalStorage === null || productFromLocalStorage === void 0 ? void 0 : productFromLocalStorage.statusByRetailer) || ((_state$
|
|
742
|
+
statusByRetailer: ((productFromLocalStorage === null || productFromLocalStorage === void 0 ? void 0 : productFromLocalStorage.statusByRetailer) || ((_state$product19 = state.product) === null || _state$product19 === void 0 ? void 0 : _state$product19.statusByRetailer) || []).map(function (retailerStatus) {
|
|
659
743
|
return retailerStatus.service === "images" ? (0, _objectSpread2.default)((0, _objectSpread2.default)({}, retailerStatus), {}, {
|
|
660
744
|
status: newStatus
|
|
661
745
|
}) : retailerStatus;
|
|
662
746
|
})
|
|
663
747
|
});
|
|
664
748
|
sessionStorage.setItem("productSelected", JSON.stringify(updatedProduct));
|
|
749
|
+
dispatch({
|
|
750
|
+
type: "UPDATE_IMAGES_STATUS",
|
|
751
|
+
payload: newStatus
|
|
752
|
+
});
|
|
665
753
|
dispatch({
|
|
666
754
|
type: "SET_SERVICES_DATA",
|
|
667
755
|
payload: (state.services_data || []).map(function (srv) {
|
|
668
|
-
var _state$
|
|
756
|
+
var _state$active_retaile6;
|
|
669
757
|
|
|
670
|
-
return srv.service === "images" && srv.id_retailer === ((_state$
|
|
758
|
+
return srv.service === "images" && srv.id_retailer === ((_state$active_retaile6 = state.active_retailer) === null || _state$active_retaile6 === void 0 ? void 0 : _state$active_retaile6.id_retailer) ? (0, _objectSpread2.default)((0, _objectSpread2.default)({}, srv), {}, {
|
|
671
759
|
status: newStatus
|
|
672
760
|
}) : srv;
|
|
673
761
|
})
|
|
@@ -728,9 +816,9 @@ var ProviderProductEditionProvider = function ProviderProductEditionProvider(_re
|
|
|
728
816
|
}();
|
|
729
817
|
|
|
730
818
|
var handleOnDownloadImages = function handleOnDownloadImages() {
|
|
731
|
-
var _state$
|
|
819
|
+
var _state$product20, _state$product21, _state$product21$arti, _state$images_values4, _state$images_values5;
|
|
732
820
|
|
|
733
|
-
var upc = ((_state$
|
|
821
|
+
var upc = ((_state$product20 = state.product) === null || _state$product20 === void 0 ? void 0 : _state$product20.upc) || ((_state$product21 = state.product) === null || _state$product21 === void 0 ? void 0 : (_state$product21$arti = _state$product21.article) === null || _state$product21$arti === void 0 ? void 0 : _state$product21$arti.upc);
|
|
734
822
|
state.selected_images.length > 0 ? state.selected_images.forEach(function (e) {
|
|
735
823
|
if (e.id) {
|
|
736
824
|
saveAs("https://".concat(process.env.REACT_APP_IMAGES_BUCKET, ".s3.amazonaws.com/").concat(e.srcDB), "".concat(upc, "_").concat(e.name, ".").concat(e.ext));
|
|
@@ -744,7 +832,7 @@ var ProviderProductEditionProvider = function ProviderProductEditionProvider(_re
|
|
|
744
832
|
|
|
745
833
|
var deleteImages = /*#__PURE__*/function () {
|
|
746
834
|
var _ref8 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(token) {
|
|
747
|
-
var imgsInBack, _state$
|
|
835
|
+
var imgsInBack, _state$product22, data;
|
|
748
836
|
|
|
749
837
|
return _regenerator.default.wrap(function _callee5$(_context5) {
|
|
750
838
|
while (1) {
|
|
@@ -765,7 +853,7 @@ var ProviderProductEditionProvider = function ProviderProductEditionProvider(_re
|
|
|
765
853
|
}
|
|
766
854
|
|
|
767
855
|
data = {
|
|
768
|
-
articleId: (_state$
|
|
856
|
+
articleId: (_state$product22 = state.product) === null || _state$product22 === void 0 ? void 0 : _state$product22.id_article,
|
|
769
857
|
deleteImages: imgsInBack
|
|
770
858
|
};
|
|
771
859
|
_context5.prev = 4;
|
|
@@ -845,7 +933,7 @@ var ProviderProductEditionProvider = function ProviderProductEditionProvider(_re
|
|
|
845
933
|
|
|
846
934
|
var createComment = /*#__PURE__*/function () {
|
|
847
935
|
var _ref9 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6(body, token) {
|
|
848
|
-
var _state$
|
|
936
|
+
var _state$product23, _state$product24, _state$product25;
|
|
849
937
|
|
|
850
938
|
var concept, data;
|
|
851
939
|
return _regenerator.default.wrap(function _callee6$(_context6) {
|
|
@@ -854,8 +942,8 @@ var ProviderProductEditionProvider = function ProviderProductEditionProvider(_re
|
|
|
854
942
|
case 0:
|
|
855
943
|
concept = (0, _utils.getConceptByTab)(state.active_tab);
|
|
856
944
|
data = {
|
|
857
|
-
articleId: (_state$
|
|
858
|
-
orderId: ((_state$
|
|
945
|
+
articleId: (_state$product23 = state.product) === null || _state$product23 === void 0 ? void 0 : _state$product23.id_article,
|
|
946
|
+
orderId: ((_state$product24 = state.product) === null || _state$product24 === void 0 ? void 0 : _state$product24.orderId) || ((_state$product25 = state.product) === null || _state$product25 === void 0 ? void 0 : _state$product25.id_order),
|
|
859
947
|
message: body,
|
|
860
948
|
concept: concept,
|
|
861
949
|
version: state.product.version
|
|
@@ -919,5 +1007,10 @@ var useProviderProductEdition = function useProviderProductEdition() {
|
|
|
919
1007
|
|
|
920
1008
|
return context;
|
|
921
1009
|
};
|
|
1010
|
+
/*
|
|
1011
|
+
src: "https://d24s337exbt5zr.cloudfront.net/eyJidWNrZXQiOiJjb250ZW50LW1hbmFnZW1lbnQtaW1hZ2VzLXByb2QiLCJrZXkiOiJpZC0xNDQ3MTEvMy8xLTRjZGVjNTZkLTVjYWMtNGY3NC04ZWM0LWZmMmRmOTFjZDdiOS5qcGciLCJlZGl0cyI6eyJyZXNpemUiOnsid2lkdGgiOjEwMDAsImhlaWdodCI6MTAwMCwiZml0IjoiY29udGFpbiIsImJhY2tncm91bmQiOnsiciI6MjU1LCJnIjoyNTUsImIiOjI1NSwiYWxwaGEiOjF9fX19"
|
|
1012
|
+
srcDB: "id-144711/3/1-4cdec56d-5cac-4f74-8ec4-ff2df91cd7b9.jpg"
|
|
1013
|
+
*/
|
|
1014
|
+
|
|
922
1015
|
|
|
923
1016
|
exports.useProviderProductEdition = useProviderProductEdition;
|
|
@@ -19,7 +19,10 @@ var PRODUCT_ACTIONS = {
|
|
|
19
19
|
SET_PRODUCT: "SET_PRODUCT",
|
|
20
20
|
SET_SERVICES: "SET_SERVICES",
|
|
21
21
|
SET_SERVICES_DATA: "SET_SERVICES_DATA",
|
|
22
|
-
SET_PRODUCT_VERSION: "SET_PRODUCT_VERSION"
|
|
22
|
+
SET_PRODUCT_VERSION: "SET_PRODUCT_VERSION",
|
|
23
|
+
UPDATE_DESCRIPTION_STATUS: "UPDATE_DESCRIPTION_STATUS",
|
|
24
|
+
UPDATE_DATASHEET_STATUS: "UPDATE_DATASHEET_STATUS",
|
|
25
|
+
UPDATE_IMAGES_STATUS: "UPDATE_IMAGES_STATUS"
|
|
23
26
|
};
|
|
24
27
|
exports.PRODUCT_ACTIONS = PRODUCT_ACTIONS;
|
|
25
28
|
|
|
@@ -55,6 +58,54 @@ var productReducer = function productReducer(state, action) {
|
|
|
55
58
|
});
|
|
56
59
|
}
|
|
57
60
|
|
|
61
|
+
case PRODUCT_ACTIONS.UPDATE_DESCRIPTION_STATUS:
|
|
62
|
+
{
|
|
63
|
+
var _state$product;
|
|
64
|
+
|
|
65
|
+
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, state), {}, {
|
|
66
|
+
product: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, state.product), {}, {
|
|
67
|
+
description_status: action.payload,
|
|
68
|
+
statusByRetailer: (((_state$product = state.product) === null || _state$product === void 0 ? void 0 : _state$product.statusByRetailer) || []).map(function (retailerStatus) {
|
|
69
|
+
return retailerStatus.service === "description" ? (0, _objectSpread2.default)((0, _objectSpread2.default)({}, retailerStatus), {}, {
|
|
70
|
+
status: action.payload
|
|
71
|
+
}) : retailerStatus;
|
|
72
|
+
})
|
|
73
|
+
})
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
case PRODUCT_ACTIONS.UPDATE_DATASHEET_STATUS:
|
|
78
|
+
{
|
|
79
|
+
var _state$product2;
|
|
80
|
+
|
|
81
|
+
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, state), {}, {
|
|
82
|
+
product: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, state.product), {}, {
|
|
83
|
+
datasheet_status: action.payload,
|
|
84
|
+
statusByRetailer: (((_state$product2 = state.product) === null || _state$product2 === void 0 ? void 0 : _state$product2.statusByRetailer) || []).map(function (retailerStatus) {
|
|
85
|
+
return retailerStatus.service === "datasheet" ? (0, _objectSpread2.default)((0, _objectSpread2.default)({}, retailerStatus), {}, {
|
|
86
|
+
status: action.payload
|
|
87
|
+
}) : retailerStatus;
|
|
88
|
+
})
|
|
89
|
+
})
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
case PRODUCT_ACTIONS.UPDATE_IMAGES_STATUS:
|
|
94
|
+
{
|
|
95
|
+
var _state$product3;
|
|
96
|
+
|
|
97
|
+
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, state), {}, {
|
|
98
|
+
product: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, state.product), {}, {
|
|
99
|
+
images_status: action.payload,
|
|
100
|
+
statusByRetailer: (((_state$product3 = state.product) === null || _state$product3 === void 0 ? void 0 : _state$product3.statusByRetailer) || []).map(function (retailerStatus) {
|
|
101
|
+
return retailerStatus.service === "images" ? (0, _objectSpread2.default)((0, _objectSpread2.default)({}, retailerStatus), {}, {
|
|
102
|
+
status: action.payload
|
|
103
|
+
}) : retailerStatus;
|
|
104
|
+
})
|
|
105
|
+
})
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
|
|
58
109
|
default:
|
|
59
110
|
{
|
|
60
111
|
return null;
|
package/package.json
CHANGED
package/src/components/pages/RetailerProductEdition/context/provider-product-edition.context.jsx
CHANGED
|
@@ -12,6 +12,7 @@ import { v4 as uuidv4 } from "uuid";
|
|
|
12
12
|
import successIcon from "../../../../assets/images/genericModal/genericModalCheck.svg";
|
|
13
13
|
import errorIcon from "../../../../assets/images/genericModal/errorModal.svg";
|
|
14
14
|
import { getConceptByTab } from "../utils";
|
|
15
|
+
import { getImage } from "../../../../global-files/data";
|
|
15
16
|
|
|
16
17
|
const S3_BUCKET = process.env.REACT_APP_IMAGES_BUCKET;
|
|
17
18
|
const REGION = "us-east-1";
|
|
@@ -122,6 +123,8 @@ export const ProviderProductEditionProvider = ({ children }) => {
|
|
|
122
123
|
JSON.stringify(updatedProduct),
|
|
123
124
|
);
|
|
124
125
|
|
|
126
|
+
dispatch({ type: "UPDATE_DESCRIPTION_STATUS", payload: newStatus });
|
|
127
|
+
|
|
125
128
|
dispatch({
|
|
126
129
|
type: "SET_SERVICES_DATA",
|
|
127
130
|
payload: (state.services_data || []).map((srv) =>
|
|
@@ -260,6 +263,8 @@ export const ProviderProductEditionProvider = ({ children }) => {
|
|
|
260
263
|
JSON.stringify(updatedProduct),
|
|
261
264
|
);
|
|
262
265
|
|
|
266
|
+
dispatch({ type: "UPDATE_DATASHEET_STATUS", payload: newStatus });
|
|
267
|
+
|
|
263
268
|
dispatch({
|
|
264
269
|
type: "SET_SERVICES_DATA",
|
|
265
270
|
payload: (state.services_data || []).map((srv) =>
|
|
@@ -423,6 +428,8 @@ export const ProviderProductEditionProvider = ({ children }) => {
|
|
|
423
428
|
JSON.stringify(updatedProduct),
|
|
424
429
|
);
|
|
425
430
|
|
|
431
|
+
dispatch({ type: "UPDATE_IMAGES_STATUS", payload: newStatus });
|
|
432
|
+
|
|
426
433
|
dispatch({
|
|
427
434
|
type: "SET_SERVICES_DATA",
|
|
428
435
|
payload: (state.services_data || []).map((srv) =>
|
|
@@ -434,6 +441,59 @@ export const ProviderProductEditionProvider = ({ children }) => {
|
|
|
434
441
|
});
|
|
435
442
|
}
|
|
436
443
|
|
|
444
|
+
// Refrescar images_values con datos reales del backend
|
|
445
|
+
try {
|
|
446
|
+
const { id_article, version } = state.product;
|
|
447
|
+
const { category, id_category, id_retailer } = state.active_retailer;
|
|
448
|
+
const imagesRes = await axios.post(
|
|
449
|
+
`${process.env.REACT_APP_ARTICLE_DATA_IMAGES_ENDPOINT}?articleId=${id_article}&version=${version}`,
|
|
450
|
+
{ category, retailersList: [id_retailer] },
|
|
451
|
+
{ headers: { Authorization: token } },
|
|
452
|
+
);
|
|
453
|
+
const freshImages = JSON.parse(imagesRes.data.body).data;
|
|
454
|
+
freshImages.values = freshImages?.values?.map((value) => {
|
|
455
|
+
value.name = freshImages.inputs.find((e) => e.id === value.image_id)?.name;
|
|
456
|
+
return getImage(value);
|
|
457
|
+
});
|
|
458
|
+
|
|
459
|
+
const orderMap = freshImages.inputsByRetailer
|
|
460
|
+
.flat()
|
|
461
|
+
.reduce((acc, item) => {
|
|
462
|
+
acc[item.id_image] = item.order;
|
|
463
|
+
return acc;
|
|
464
|
+
}, {});
|
|
465
|
+
|
|
466
|
+
const orderedValues = [...freshImages.values].sort((a, b) => {
|
|
467
|
+
const orderA = orderMap[a.image_id] ?? Number.MAX_SAFE_INTEGER;
|
|
468
|
+
const orderB = orderMap[b.image_id] ?? Number.MAX_SAFE_INTEGER;
|
|
469
|
+
return orderA - orderB;
|
|
470
|
+
});
|
|
471
|
+
|
|
472
|
+
const filteredValues = freshImages.values.filter((value) =>
|
|
473
|
+
freshImages.inputsByRetailer.some((retailerInput) =>
|
|
474
|
+
retailerInput.some(
|
|
475
|
+
(input) =>
|
|
476
|
+
input.id_retailer === id_retailer &&
|
|
477
|
+
input.id_image === value.image_id,
|
|
478
|
+
),
|
|
479
|
+
),
|
|
480
|
+
);
|
|
481
|
+
|
|
482
|
+
dispatch({
|
|
483
|
+
type: "SET_IMAGES_VALUES",
|
|
484
|
+
payload: { ...freshImages, values: filteredValues },
|
|
485
|
+
});
|
|
486
|
+
dispatch({
|
|
487
|
+
type: "SET_SERVICES",
|
|
488
|
+
payload: {
|
|
489
|
+
...state.services,
|
|
490
|
+
images: { ...freshImages, values: orderedValues },
|
|
491
|
+
},
|
|
492
|
+
});
|
|
493
|
+
} catch (refreshError) {
|
|
494
|
+
console.log("Error al refrescar images_values:", refreshError);
|
|
495
|
+
}
|
|
496
|
+
|
|
437
497
|
// Mostrar modal de éxito
|
|
438
498
|
dispatch({
|
|
439
499
|
type: "SET_MODAL",
|
|
@@ -548,6 +608,8 @@ export const ProviderProductEditionProvider = ({ children }) => {
|
|
|
548
608
|
JSON.stringify(updatedProduct),
|
|
549
609
|
);
|
|
550
610
|
|
|
611
|
+
dispatch({ type: "UPDATE_IMAGES_STATUS", payload: newStatus });
|
|
612
|
+
|
|
551
613
|
dispatch({
|
|
552
614
|
type: "SET_SERVICES_DATA",
|
|
553
615
|
payload: (state.services_data || []).map((srv) =>
|
|
@@ -724,3 +786,8 @@ export const useProviderProductEdition = () => {
|
|
|
724
786
|
|
|
725
787
|
return context;
|
|
726
788
|
};
|
|
789
|
+
|
|
790
|
+
/*
|
|
791
|
+
src: "https://d24s337exbt5zr.cloudfront.net/eyJidWNrZXQiOiJjb250ZW50LW1hbmFnZW1lbnQtaW1hZ2VzLXByb2QiLCJrZXkiOiJpZC0xNDQ3MTEvMy8xLTRjZGVjNTZkLTVjYWMtNGY3NC04ZWM0LWZmMmRmOTFjZDdiOS5qcGciLCJlZGl0cyI6eyJyZXNpemUiOnsid2lkdGgiOjEwMDAsImhlaWdodCI6MTAwMCwiZml0IjoiY29udGFpbiIsImJhY2tncm91bmQiOnsiciI6MjU1LCJnIjoyNTUsImIiOjI1NSwiYWxwaGEiOjF9fX19"
|
|
792
|
+
srcDB: "id-144711/3/1-4cdec56d-5cac-4f74-8ec4-ff2df91cd7b9.jpg"
|
|
793
|
+
*/
|
|
@@ -9,6 +9,9 @@ export const PRODUCT_ACTIONS = {
|
|
|
9
9
|
SET_SERVICES: "SET_SERVICES",
|
|
10
10
|
SET_SERVICES_DATA: "SET_SERVICES_DATA",
|
|
11
11
|
SET_PRODUCT_VERSION: "SET_PRODUCT_VERSION",
|
|
12
|
+
UPDATE_DESCRIPTION_STATUS: "UPDATE_DESCRIPTION_STATUS",
|
|
13
|
+
UPDATE_DATASHEET_STATUS: "UPDATE_DATASHEET_STATUS",
|
|
14
|
+
UPDATE_IMAGES_STATUS: "UPDATE_IMAGES_STATUS",
|
|
12
15
|
};
|
|
13
16
|
|
|
14
17
|
export const productReducer = (state, action) => {
|
|
@@ -44,6 +47,54 @@ export const productReducer = (state, action) => {
|
|
|
44
47
|
};
|
|
45
48
|
}
|
|
46
49
|
|
|
50
|
+
case PRODUCT_ACTIONS.UPDATE_DESCRIPTION_STATUS: {
|
|
51
|
+
return {
|
|
52
|
+
...state,
|
|
53
|
+
product: {
|
|
54
|
+
...state.product,
|
|
55
|
+
description_status: action.payload,
|
|
56
|
+
statusByRetailer: (state.product?.statusByRetailer || []).map(
|
|
57
|
+
(retailerStatus) =>
|
|
58
|
+
retailerStatus.service === "description"
|
|
59
|
+
? { ...retailerStatus, status: action.payload }
|
|
60
|
+
: retailerStatus,
|
|
61
|
+
),
|
|
62
|
+
},
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
case PRODUCT_ACTIONS.UPDATE_DATASHEET_STATUS: {
|
|
67
|
+
return {
|
|
68
|
+
...state,
|
|
69
|
+
product: {
|
|
70
|
+
...state.product,
|
|
71
|
+
datasheet_status: action.payload,
|
|
72
|
+
statusByRetailer: (state.product?.statusByRetailer || []).map(
|
|
73
|
+
(retailerStatus) =>
|
|
74
|
+
retailerStatus.service === "datasheet"
|
|
75
|
+
? { ...retailerStatus, status: action.payload }
|
|
76
|
+
: retailerStatus,
|
|
77
|
+
),
|
|
78
|
+
},
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
case PRODUCT_ACTIONS.UPDATE_IMAGES_STATUS: {
|
|
83
|
+
return {
|
|
84
|
+
...state,
|
|
85
|
+
product: {
|
|
86
|
+
...state.product,
|
|
87
|
+
images_status: action.payload,
|
|
88
|
+
statusByRetailer: (state.product?.statusByRetailer || []).map(
|
|
89
|
+
(retailerStatus) =>
|
|
90
|
+
retailerStatus.service === "images"
|
|
91
|
+
? { ...retailerStatus, status: action.payload }
|
|
92
|
+
: retailerStatus,
|
|
93
|
+
),
|
|
94
|
+
},
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
|
|
47
98
|
default: {
|
|
48
99
|
return null;
|
|
49
100
|
}
|