changes in kurir and pengaturanbiayakurir schema for ref and kurir search api

This commit is contained in:
kicap1992
2022-05-30 01:50:18 +08:00
parent 5ce41354f0
commit 4237cfec46
5 changed files with 137 additions and 28 deletions

View File

@ -2,7 +2,9 @@ const express = require('express');
const router = express.Router();
const {pengirimModel, kurirModel, loginUserModel} = require('../models/users_model');
const { pengirimModel, kurirModel, loginUserModel } = require('../models/users_model');
const { pengaturanPengirimanModel } = require('../models/kurir_model');
let googlenya = require('../google/googleapi.js');
@ -35,15 +37,83 @@ router.get('/', cek_user_pengirim, async (req, res) => {
})
// create '/pengirim' get route
router.get('/kurir', cek_user_pengirim, async (req, res) => {
// router.get('/kurir', cek_user_pengirim, async (req, res) => {
router.get('/kurir', async (req, res) => {
try {
const data = await kurirModel.find({
status: 'Aaaktif'
}).select('-email -created_at -updated_at -__v -ktp_url -kenderaan_url -photo_url -_id -alamat');
res.status(200).send({data : data});
status: 'Aktif'
}).select('-email -created_at -updated_at -__v -ktp_url -_id -alamat').populate(
{
path: 'pengaturan_pengiriman',
}
).exec();
res.status(200).send({ data: data });
} catch (error) {
res.status(500).send({ message: 'Internal Server Error' });
}
})
// create '/pengirim/:nama' get route
router.get('/kurir/nama', cek_user_pengirim, async (req, res) => {
try {
const nama = (req.query.nama != null && req.query.nama != '') ? req.query.nama.toString() : '';
const data = await kurirModel.find({
nama: {
$regex: nama,
$options: 'i'
}
}).select('-email -created_at -updated_at -__v -ktp_url -_id -alamat').populate(
{
path: 'pengaturan_pengiriman',
}
)
res.status(200).send({ data: data });
} catch (error) {
res.status(500).send({ message: 'Internal Server Error' });
}
})
// create '/pengirim/filter/' get route
router.get('/kurir/filter/', cek_user_pengirim, async (req, res) => {
const nama = (req.query.nama != null && req.query.nama != '') ? req.query.nama.toString() : '';
const biaya_maksimal = (req.query.biaya_maksimal != null && req.query.biaya_maksimal != '') ? parseInt(req.query.biaya_maksimal.toString()) : '';
const biaya_per_kilo = (req.query.biaya_per_km != null && req.query.biaya_per_km != '') ? parseInt(req.query.biaya_per_km.toString()) : '';
const data = await pengaturanPengirimanModel.find(
(biaya_per_kilo != '' && biaya_maksimal != '') ? {
biaya_per_kilo: {
$lte: biaya_per_kilo
},
biaya_maksimal: {
$lte: biaya_maksimal
}
} :
(biaya_per_kilo != '' && biaya_maksimal == '') ? {
biaya_per_kilo: {
$lte: biaya_per_kilo
}
} :
(biaya_per_kilo == '' && biaya_maksimal != '') ? {
biaya_maksimal: {
$lte: biaya_maksimal
}
} : {}
).populate({
path: 'kurir',
select: '-email -created_at -updated_at -__v -ktp_url -_id -alamat',
match: {
nama: {
$regex: nama,
$options: 'i'
}
}
}).exec();
console.log(data)
res.status(200).send({ data: data });
})
module.exports = router;