diff --git a/v1/src/apps/public/public-load-tracking/services.js b/v1/src/apps/public/public-load-tracking/services.js index d8212d8..450841f 100644 --- a/v1/src/apps/public/public-load-tracking/services.js +++ b/v1/src/apps/public/public-load-tracking/services.js @@ -22,6 +22,7 @@ const getById = async(req, res) => { const elementId = req.params.id; const select = [ "categories", + "shipment_code", "truck_type", "published_date", "createdAt", @@ -31,11 +32,13 @@ const getById = async(req, res) => { "est_loading_date", "est_unloading_date", "origin.city", - "origin_geo", "origin.state", + "origin.lat", + "origin.lng", "destination.city", "destination.state", - "destination_geo", + "destination.lat", + "destination.lng", ]; // const load = await Model.findOne( { _id : elementId , load_status : "Transit" } , select ).populate( populate_list ); const load = await Model.findById( elementId , select ).populate( populate_list ); diff --git a/v1/src/apps/public/public-loads/services.js b/v1/src/apps/public/public-loads/services.js index 5313c7c..f1cc0be 100644 --- a/v1/src/apps/public/public-loads/services.js +++ b/v1/src/apps/public/public-loads/services.js @@ -1,46 +1,40 @@ -"use strict"; -const { getPagination , getPage } = require( '../../../lib/Misc' ); -const { GenericHandler } = require( '../../../lib/Handlers/Generic.handler' ); -const Model = require( '../../../lib/Models/loads.model.js' ); -const categoriesModel = require( '../../../lib/Models/product-categories.model' ); - -const populate_list = [ - 'categories', - { - path:'vehicle', - select:"last_location_lat last_location_lng last_location_geo last_location_time background_tracking" - } -]; -// last_location_lat -// last_location_lng -// last_location_geo -// last_location_time -// background_tracking -const generic = new GenericHandler( Model, null, populate_list ); - -const getList = async(req, res) => { - try{ - const filter = { status : "Published" }; - const select = [ - "shipment_code", - "categories", - "truck_type", - "published_date", - "createdAt", - "status", - "weight", - "est_loading_date", - "est_unloading_date", - "origin", - "destination" - ]; - const { page , elements } = getPagination( req.query ); - const retVal = await generic.getList(page , elements, filter, select ); - res.send( retVal ); - }catch(error){ - console.error( error ); - return res.status( 500 ).send({ error: error.message }); - } -}; - -module.exports = { getList }; +"use strict"; +const { getPagination , getPage } = require( '../../../lib/Misc' ); +const { GenericHandler } = require( '../../../lib/Handlers/Generic.handler' ); +const Model = require( '../../../lib/Models/loads.model.js' ); +const categoriesModel = require( '../../../lib/Models/product-categories.model' ); + +const populate_list = [ 'categories' ]; +// last_location_lat +// last_location_lng +// last_location_geo +// last_location_time +// background_tracking +const generic = new GenericHandler( Model, null, populate_list ); + +const getList = async(req, res) => { + try{ + const filter = { status : "Published" }; + const select = [ + "shipment_code", + "categories", + "truck_type", + "published_date", + "createdAt", + "status", + "weight", + "est_loading_date", + "est_unloading_date", + "origin", + "destination" + ]; + const { page , elements } = getPagination( req.query ); + const retVal = await generic.getList(page , elements, filter, select ); + res.send( retVal ); + }catch(error){ + console.error( error ); + return res.status( 500 ).send({ error: error.message }); + } +}; + +module.exports = { getList }; diff --git a/v1/src/apps/public/public-vehicles/services.js b/v1/src/apps/public/public-vehicles/services.js index 28383fd..4e587f4 100644 --- a/v1/src/apps/public/public-vehicles/services.js +++ b/v1/src/apps/public/public-vehicles/services.js @@ -40,7 +40,8 @@ const getListPublished = async(req, res) => { const getListLocations = async(req, res) => { const filter = { status : "Free" }; const select = [ - "last_location_geo", + "last_location_lat", + "last_location_lng", "driver", "updatedAt", "status", diff --git a/v1/src/lib/Handlers/Account/index.js b/v1/src/lib/Handlers/Account/index.js index ba10f86..45a1111 100644 --- a/v1/src/lib/Handlers/Account/index.js +++ b/v1/src/lib/Handlers/Account/index.js @@ -71,7 +71,7 @@ async function login( email , password ){ let safe_password = toSha256( password + pwd_secret ); const user = await UserModel.findOne({ email , password : safe_password - },{ password : 0 , session_token : 0 , session_token_exp : 0 }).populate('company'); + },{ password : 0 , session_token : 0 , session_token_exp : 0 }).populate(['company','vehicle']); return user; } @@ -79,7 +79,7 @@ async function login_with_session_token( session_token ){ const user = await UserModel.findOne({ session_token, session_token_exp : { $gte: new Date() } - },{ password : 0 , session_token : 0 , session_token_exp : 0 }).populate('company'); + },{ password : 0 , session_token : 0 , session_token_exp : 0 }).populate(['company','vehicle']); return user; } diff --git a/v1/src/lib/Handlers/Users.handler.js b/v1/src/lib/Handlers/Users.handler.js index cd35a96..975e22e 100644 --- a/v1/src/lib/Handlers/Users.handler.js +++ b/v1/src/lib/Handlers/Users.handler.js @@ -7,7 +7,7 @@ const { getPagination } = require( `${ROOT_PATH}/${LIB_PATH}/Misc.js` ); const usersModel = getModel('users'); const companiesModel = getModel('companies'); -const populate_list = ['company','branch','vehicle','active_load','categories']; +const populate_list = ['company','branch','vehicle','categories']; const generic = new GenericHandler( usersModel, "first_name", populate_list ); async function getUserById( id , filter ){ diff --git a/v1/src/lib/Models/users.model.js b/v1/src/lib/Models/users.model.js index 455075c..c97c030 100644 --- a/v1/src/lib/Models/users.model.js +++ b/v1/src/lib/Models/users.model.js @@ -35,8 +35,6 @@ const schema = new Schema({ vehicle: { type: Schema.Types.ObjectId, ref: 'vehicles' }, - active_load: { type: Schema.Types.ObjectId, ref: 'loads' }, - categories: [{ type: Schema.Types.ObjectId, ref: 'productcategories' }], user_city: [{ type: String }], user_state: [{ type: String }], diff --git a/v1/src/lib/Models/vehicles.model.js b/v1/src/lib/Models/vehicles.model.js index de987e6..f410b75 100644 --- a/v1/src/lib/Models/vehicles.model.js +++ b/v1/src/lib/Models/vehicles.model.js @@ -1,18 +1,6 @@ const mongoose = require('mongoose'); const { Schema } = mongoose; -const pointSchema = new Schema({ - type: { - type: String, - enum: ['Point'], - required: true - }, - coordinates: { - type: [Number], - required: true - } -}); - const schema = new Schema({ company: { type: Schema.Types.ObjectId, ref: 'companies', required: true }, // carrier company_name : { type: String, required: true }, @@ -50,7 +38,6 @@ const schema = new Schema({ last_location_lat: { type: String }, last_location_lng: { type: String }, - last_location_geo: { type: pointSchema }, last_location_time: { type: Date }, createdAt: { type : Date, required : true, default : () => { return Date.now(); } } });