@devx-commerce/plugin-gati
Version:
Gati ERP integration for Medusa
149 lines • 9.72 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.POST = POST;
const framework_1 = require("@medusajs/framework");
const category_group_master_1 = require("../../../workflows/category-group-master");
const category_master_1 = require("../../../workflows/category-master");
const collection_group_master_1 = require("../../../workflows/collection-group-master");
const collection_master_1 = require("../../../workflows/collection-master");
const create_or_update_party_style_master_1 = __importDefault(require("../../../workflows/create-or-update-party-style-master"));
const create_or_update_style_master_1 = __importDefault(require("../../../workflows/create-or-update-style-master"));
const erp_event_1 = require("../../../workflows/erp-event");
const party_master_1 = require("../../../workflows/party-master");
const raw_master_1 = require("../../../workflows/raw-master");
const shape_master_1 = require("../../../workflows/shape-master");
const sub_category_master_1 = require("../../../workflows/sub-category-master");
async function POST(req, res) {
try {
const { datafor, operation, data } = req.body;
if (!datafor || !operation || !Array.isArray(data)) {
res.status(400).json({
status: false,
message: "Invalid request body. Required fields: datafor, operation, data (array)",
});
return;
}
// Log the received data
framework_1.logger.info(`Received webhook: ${operation} for ${datafor} with ${data.length} items`);
await (0, erp_event_1.erpEventWorkflow)(req.scope).run({
input: {
datafor,
operation,
data,
},
});
switch (datafor) {
case "StyleMst":
await (0, create_or_update_style_master_1.default)(req.scope).run({
input: {
datafor,
operation,
data,
},
});
break;
case "PartyStyleMst":
await (0, create_or_update_party_style_master_1.default)(req.scope).run({
input: {
datafor,
operation,
data,
},
});
break;
case "ShapeMst":
await (0, shape_master_1.shapeMasterWorkflow)(req.scope).run({
input: {
datafor,
operation,
data,
},
});
break;
case "RawMst":
await (0, raw_master_1.rawMasterWorkflow)(req.scope).run({
input: {
datafor,
operation,
data,
},
});
break;
case "CollectionMst":
await (0, collection_master_1.collectionMasterWorkflow)(req.scope).run({
input: {
datafor,
operation,
data,
},
});
break;
case "SubCategoryMst":
await (0, sub_category_master_1.subCategoryMasterWorkflow)(req.scope).run({
input: {
datafor,
operation,
data,
},
});
break;
case "CategoryMst":
await (0, category_master_1.categoryMasterWorkflow)(req.scope).run({
input: {
datafor,
operation,
data,
},
});
break;
case "CategoryGroupMst":
await (0, category_group_master_1.categoryGroupMasterWorkflow)(req.scope).run({
input: {
datafor,
operation,
data,
},
});
break;
case "CollectionGroupMst":
await (0, collection_group_master_1.collectionGroupMasterWorkflow)(req.scope).run({
input: {
datafor,
operation,
data,
},
});
break;
case "PartyMst":
await (0, party_master_1.partyMasterWorkflow)(req.scope).run({
input: {
datafor,
operation,
data,
},
});
break;
default:
res.status(400).json({
status: false,
message: `Unsupported datafor type: ${datafor}`,
});
return;
}
res.status(200).json({
status: true,
message: `Successfully processed ${operation} for ${datafor}`,
});
}
catch (error) {
framework_1.logger.error("Error processing webhook:", error);
res.status(500).json({
status: false,
message: "Internal server error",
});
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2VycC93ZWJob29rL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBZ0JBLG9CQTJJQztBQTNKRCxtREFBNkM7QUFHN0Msb0ZBQXVGO0FBQ3ZGLHdFQUE0RTtBQUM1RSx3RkFBMkY7QUFDM0YsNEVBQWdGO0FBQ2hGLGlJQUEyRjtBQUMzRixxSEFBZ0Y7QUFDaEYsNERBQWdFO0FBQ2hFLGtFQUFzRTtBQUN0RSw4REFBa0U7QUFDbEUsa0VBQXNFO0FBQ3RFLGdGQUFtRjtBQUc1RSxLQUFLLFVBQVUsSUFBSSxDQUN4QixHQUFrQixFQUNsQixHQUFtQjtJQUVuQixJQUFJLENBQUM7UUFDSCxNQUFNLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsR0FBRyxHQUFHLENBQUMsSUFBc0IsQ0FBQztRQUVoRSxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ25ELEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO2dCQUNuQixNQUFNLEVBQUUsS0FBSztnQkFDYixPQUFPLEVBQ0wseUVBQXlFO2FBQzVFLENBQUMsQ0FBQztZQUNILE9BQU87UUFDVCxDQUFDO1FBRUQsd0JBQXdCO1FBQ3hCLGtCQUFNLENBQUMsSUFBSSxDQUNULHFCQUFxQixTQUFTLFFBQVEsT0FBTyxTQUFTLElBQUksQ0FBQyxNQUFNLFFBQVEsQ0FDMUUsQ0FBQztRQUVGLE1BQU0sSUFBQSw0QkFBZ0IsRUFBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDO1lBQ3BDLEtBQUssRUFBRTtnQkFDTCxPQUFPO2dCQUNQLFNBQVM7Z0JBQ1QsSUFBSTthQUNMO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsUUFBUSxPQUFPLEVB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