feat(v1:vehicles): Adding vehicle field company_name
This commit is contained in:
@@ -4,6 +4,7 @@ const { getModel } = require( `${ROOT_PATH}/${MODELS_PATH}` );
|
|||||||
const { getPagination } = require( `${ROOT_PATH}/${LIB_PATH}/Misc.js` );
|
const { getPagination } = require( `${ROOT_PATH}/${LIB_PATH}/Misc.js` );
|
||||||
const { GenericHandler } = require( `${ROOT_PATH}/${HANDLERS_PATH}/Generic.handler.js` );
|
const { GenericHandler } = require( `${ROOT_PATH}/${HANDLERS_PATH}/Generic.handler.js` );
|
||||||
const Model = getModel('vehicles');
|
const Model = getModel('vehicles');
|
||||||
|
const CompanyModel = getModel('companies');
|
||||||
|
|
||||||
const populate_list = ['categories', 'active_load','load_shipper','driver'];
|
const populate_list = ['categories', 'active_load','load_shipper','driver'];
|
||||||
const generic = new GenericHandler( Model, null, populate_list );
|
const generic = new GenericHandler( Model, null, populate_list );
|
||||||
@@ -12,6 +13,7 @@ function getAndFilterList( query ){
|
|||||||
const filter_list = [];
|
const filter_list = [];
|
||||||
const {
|
const {
|
||||||
company,
|
company,
|
||||||
|
company_name,
|
||||||
is_available,
|
is_available,
|
||||||
categories,
|
categories,
|
||||||
active_load,
|
active_load,
|
||||||
@@ -30,6 +32,7 @@ function getAndFilterList( query ){
|
|||||||
} = query;
|
} = query;
|
||||||
|
|
||||||
if( company ) { filter_list.push({ company }); }
|
if( company ) { filter_list.push({ company }); }
|
||||||
|
if( company_name ) { filter_list.push({ company_name }); }
|
||||||
if( is_available ) { filter_list.push({ is_available }); }
|
if( is_available ) { filter_list.push({ is_available }); }
|
||||||
if( categories ) { filter_list.push({ categories }); }
|
if( categories ) { filter_list.push({ categories }); }
|
||||||
if( active_load ) { filter_list.push({ active_load }); }
|
if( active_load ) { filter_list.push({ active_load }); }
|
||||||
@@ -135,6 +138,7 @@ const patchVehicle = async(req, res) => {
|
|||||||
const companyId = req.context.companyId;
|
const companyId = req.context.companyId;
|
||||||
const elementId = req.params.id;
|
const elementId = req.params.id;
|
||||||
const permissions = req.context.permissions;
|
const permissions = req.context.permissions;
|
||||||
|
const company = await CompanyModel.findById( companyId );
|
||||||
const vehicle = await findElementById( elementId , companyId );
|
const vehicle = await findElementById( elementId , companyId );
|
||||||
const data = req.body;
|
const data = req.body;
|
||||||
if( !vehicle ){
|
if( !vehicle ){
|
||||||
@@ -146,7 +150,9 @@ const patchVehicle = async(req, res) => {
|
|||||||
if( permissions !== "role_carrier" ){
|
if( permissions !== "role_carrier" ){
|
||||||
throw "You can't modify vehicles";
|
throw "You can't modify vehicles";
|
||||||
}
|
}
|
||||||
|
|
||||||
data.company = companyId;
|
data.company = companyId;
|
||||||
|
data.company_name = company.name;
|
||||||
await Model.findByIdAndUpdate( elementId , data );
|
await Model.findByIdAndUpdate( elementId , data );
|
||||||
return res.send( await Model.findById( elementId ) );
|
return res.send( await Model.findById( elementId ) );
|
||||||
}catch(error){
|
}catch(error){
|
||||||
@@ -159,6 +165,7 @@ const postVehicle = async(req, res) => {
|
|||||||
try{
|
try{
|
||||||
const userId = req.context.userId;
|
const userId = req.context.userId;
|
||||||
const companyId = req.context.companyId;
|
const companyId = req.context.companyId;
|
||||||
|
const company = await CompanyModel.findById( companyId );
|
||||||
const permissions = req.context.permissions;
|
const permissions = req.context.permissions;
|
||||||
const data = req.body;
|
const data = req.body;
|
||||||
if( !data ){
|
if( !data ){
|
||||||
@@ -167,7 +174,9 @@ const postVehicle = async(req, res) => {
|
|||||||
if(permissions !== "role_carrier" ){
|
if(permissions !== "role_carrier" ){
|
||||||
throw "You can't create vehicles";
|
throw "You can't create vehicles";
|
||||||
}
|
}
|
||||||
|
|
||||||
data.company = companyId;
|
data.company = companyId;
|
||||||
|
data.company_name = company.name;
|
||||||
data.status = "Free";
|
data.status = "Free";
|
||||||
data.is_available = false;
|
data.is_available = false;
|
||||||
data.posted_by = userId;
|
data.posted_by = userId;
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ const pointSchema = new Schema({
|
|||||||
|
|
||||||
const schema = new Schema({
|
const schema = new Schema({
|
||||||
company: { type: Schema.Types.ObjectId, ref: 'companies', required: true }, // carrier
|
company: { type: Schema.Types.ObjectId, ref: 'companies', required: true }, // carrier
|
||||||
|
company_name : { type: String },
|
||||||
|
|
||||||
vehicle_code: { type: String },
|
vehicle_code: { type: String },
|
||||||
vehicle_name: { type: String },
|
vehicle_name: { type: String },
|
||||||
|
|||||||
Reference in New Issue
Block a user