feat: Adding missing event handlers (templates)
This commit is contained in:
59
v1/src/lib/Handlers/Events/Observers/index.js
Normal file
59
v1/src/lib/Handlers/Events/Observers/index.js
Normal file
@@ -0,0 +1,59 @@
|
||||
'user strict';
|
||||
const ClientEvents = require('./Client');
|
||||
const WarehouseEvents = require('./Warehouse');
|
||||
|
||||
const NOTIFICATION_TYPE={
|
||||
CLIENT:0,
|
||||
WAREHOUSE:1,
|
||||
BOTH:2,
|
||||
}
|
||||
|
||||
async function onProposalAccepted( notification_type, content ){
|
||||
const { warehouse, load, carrier, product, vehicle, driver } = content;
|
||||
|
||||
switch ( notification_type ){
|
||||
case NOTIFICATION_TYPE.CLIENT:
|
||||
return await ClientEvents.onProposalAccepted( load, carrier, product, vehicle, driver );
|
||||
case NOTIFICATION_TYPE.WAREHOUSE:
|
||||
return await WarehouseEvents.onProposalAccepted( warehouse, load, carrier, product, vehicle, driver );
|
||||
case NOTIFICATION_TYPE.BOTH:
|
||||
await WarehouseEvents.onProposalAccepted( warehouse, load, carrier, product, vehicle, driver );
|
||||
await ClientEvents.onProposalAccepted( load, carrier, product, vehicle, driver );
|
||||
default:
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
async function onProposalDriverChanged( notification_type, content ){
|
||||
const { warehouse, load, carrier, product, vehicle, driver } = content;
|
||||
|
||||
switch ( notification_type ){
|
||||
case NOTIFICATION_TYPE.CLIENT:
|
||||
return await ClientEvents.onProposalDriverChanged( load, carrier, product, vehicle, driver );
|
||||
case NOTIFICATION_TYPE.WAREHOUSE:
|
||||
return await WarehouseEvents.onProposalDriverChanged( warehouse, load, carrier, product, vehicle, driver );
|
||||
case NOTIFICATION_TYPE.BOTH:
|
||||
await WarehouseEvents.onProposalDriverChanged( warehouse, load, carrier, product, vehicle, driver );
|
||||
await ClientEvents.onProposalDriverChanged( load, carrier, product, vehicle, driver );
|
||||
default:
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
async function onProposalVehicleChanged( notification_type, content ){
|
||||
const { warehouse, load, carrier, product, vehicle, driver } = content;
|
||||
|
||||
switch ( notification_type ){
|
||||
case NOTIFICATION_TYPE.CLIENT:
|
||||
return await ClientEvents.onProposalVehicleChanged( load, carrier, product, vehicle, driver );
|
||||
case NOTIFICATION_TYPE.WAREHOUSE:
|
||||
return await WarehouseEvents.onProposalVehicleChanged( warehouse, load, carrier, product, vehicle, driver );
|
||||
case NOTIFICATION_TYPE.BOTH:
|
||||
await WarehouseEvents.onProposalVehicleChanged( warehouse, load, carrier, product, vehicle, driver );
|
||||
await ClientEvents.onProposalVehicleChanged( load, carrier, product, vehicle, driver );
|
||||
default:
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = { NOTIFICATION_TYPE, onProposalAccepted, onProposalDriverChanged, onProposalVehicleChanged };
|
||||
Reference in New Issue
Block a user