fix: Fix tracking issues and remove active_load from user model
This commit is contained in:
@@ -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 );
|
||||
|
||||
@@ -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 };
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
|
||||
@@ -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 ){
|
||||
|
||||
@@ -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 }],
|
||||
|
||||
@@ -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(); } }
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user