feat(Proposals): Add event to update proposal and loads on cancelation

This commit is contained in:
Josepablo C
2024-04-06 16:42:18 -06:00
parent 62a5e8419a
commit 874abaacd2

View File

@@ -14,14 +14,25 @@ const companiesModel = getModel('companies');
* @returns
*/
async function onPatchEvent( id , newProposalData ){
if( !newProposalData.is_accepted ){
return;
}
const proposal = await proposalsModel.findById( id );
if( !newProposalData.is_accepted ){
/// Update Proposal:
/// Remove shipper
await proposalsModel.findByIdAndUpdate( id , {
shipper : null
} );
/// Update Load:
/// Remove carrier, driver and vehicle
await loadsModel.findByIdAndUpdate( proposal.load, {
carrier : null,
driver : null,
vehicle : null,
} );
}else{
const shipper_user = await usersModel.findById( proposal.accepted_by );
const shipper = await companiesModel.findById( shipper_user.company );
const vehicle = await vehiclesModel.findById( proposal.vehicle );
/// Update Proposal:
/// Adding shipper to proposal
await proposalsModel.findByIdAndUpdate( id , {
@@ -36,5 +47,6 @@ async function onPatchEvent( id , newProposalData ){
vehicle : proposal.vehicle,
} );
}
}
module.exports = { onPatchEvent };