fix: Fix tracking issues and remove active_load from user model

This commit is contained in:
Josepablo C
2024-10-11 20:47:39 -06:00
parent 46de083c41
commit ded1760923
7 changed files with 50 additions and 67 deletions

View File

@@ -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 );

View File

@@ -4,13 +4,7 @@ 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"
}
];
const populate_list = [ 'categories' ];
// last_location_lat
// last_location_lng
// last_location_geo

View File

@@ -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",

View File

@@ -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;
}

View File

@@ -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 ){

View File

@@ -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 }],

View File

@@ -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(); } }
});