added pengiriman_detail api
This commit is contained in:
@ -44,7 +44,7 @@ const pengirimanBarangSchema = new mongoose.Schema({
|
|||||||
type: String,
|
type: String,
|
||||||
default: 'Dalam Pengesahan Kurir',
|
default: 'Dalam Pengesahan Kurir',
|
||||||
},
|
},
|
||||||
biaya : {
|
biaya: {
|
||||||
biaya_minimal: {
|
biaya_minimal: {
|
||||||
type: Number,
|
type: Number,
|
||||||
required: true,
|
required: true,
|
||||||
@ -66,6 +66,17 @@ const pengirimanBarangSchema = new mongoose.Schema({
|
|||||||
type: mongoose.Schema.Types.ObjectId,
|
type: mongoose.Schema.Types.ObjectId,
|
||||||
ref: 'tb_pengirim'
|
ref: 'tb_pengirim'
|
||||||
},
|
},
|
||||||
|
history: [new mongoose.Schema({
|
||||||
|
waktu: {
|
||||||
|
type: Date,
|
||||||
|
default: Date.now,
|
||||||
|
},
|
||||||
|
status_pengiriman: {
|
||||||
|
type: String,
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
_id: false,
|
||||||
|
})],
|
||||||
created_at: {
|
created_at: {
|
||||||
type: Date,
|
type: Date,
|
||||||
default: Date.now
|
default: Date.now
|
||||||
|
|||||||
@ -3,7 +3,7 @@ const router = express.Router();
|
|||||||
const md5 = require('md5');
|
const md5 = require('md5');
|
||||||
|
|
||||||
const { pengaturanPengirimanModel } = require('../models/kurir_model');
|
const { pengaturanPengirimanModel } = require('../models/kurir_model');
|
||||||
const { kurirModel, loginUserModel , pengirimModel} = require('../models/users_model');
|
const { kurirModel, loginUserModel, pengirimModel } = require('../models/users_model');
|
||||||
const { pengirimanBarangModel } = require('../models/pengirim_model');
|
const { pengirimanBarangModel } = require('../models/pengirim_model');
|
||||||
|
|
||||||
let googlenya = require('../google/googleapi.js');
|
let googlenya = require('../google/googleapi.js');
|
||||||
@ -93,17 +93,22 @@ router.get('/pengaturan', cek_user_kurir, async (req, res) => {
|
|||||||
})
|
})
|
||||||
|
|
||||||
// create '/pengiriman_kurir_dalam_pengesahan' get route
|
// create '/pengiriman_kurir_dalam_pengesahan' get route
|
||||||
router.get('/pengiriman_kurir_dalam_pengesahan', async (req, res) => {
|
router.get('/pengiriman_kurir_dalam_pengesahan', cek_user_kurir, async (req, res) => {
|
||||||
try {
|
try {
|
||||||
console.log('masuk get pengiriman_kurir_dalam_pengesahan');
|
console.log('masuk get pengiriman_kurir_dalam_pengesahan');
|
||||||
const cek_data = await pengirimanBarangModel.find({
|
const cek_data = await pengirimanBarangModel.find({
|
||||||
kurir: req.query.id,
|
kurir: req.query.id,
|
||||||
status: 'Dalam Pengesahan Kurir'
|
// status = 'Dalam Pengesahan Kurir' or 'Disahkan Kurir'
|
||||||
}).select(' -kurir -__v ').populate({
|
$or: [
|
||||||
path: 'pengirim',
|
{ status_pengiriman: 'Dalam Pengesahan Kurir' },
|
||||||
select: '-__v -created_at -updated_at -status'
|
{ status_pengiriman: 'Disahkan Kurir' },
|
||||||
|
{ status_pengiriman: 'Mengambil Paket Pengiriman Dari Pengirim' }
|
||||||
|
]
|
||||||
|
}).select(' -kurir -__v ').sort({ status_pengiriman: -1 }).populate({
|
||||||
|
path: 'pengirim',
|
||||||
|
select: '-__v -created_at -updated_at -status'
|
||||||
|
|
||||||
});
|
});
|
||||||
res.status(200).send({ message: 'Data berhasil ditemukan', data: cek_data });
|
res.status(200).send({ message: 'Data berhasil ditemukan', data: cek_data });
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
res.status(500).send({ message: 'Internal Server Error', data: null });
|
res.status(500).send({ message: 'Internal Server Error', data: null });
|
||||||
@ -112,13 +117,112 @@ router.get('/pengiriman_kurir_dalam_pengesahan', async (req, res) => {
|
|||||||
|
|
||||||
})
|
})
|
||||||
|
|
||||||
|
// create 'sahkan_pengiriman' post route
|
||||||
|
router.post('/sahkan_pengiriman', cek_user_kurir, async (req, res) => {
|
||||||
|
try {
|
||||||
|
const id_pengiriman = req.body.id_pengiriman;
|
||||||
|
const cek_data = await pengirimanBarangModel.findOne({
|
||||||
|
_id: id_pengiriman,
|
||||||
|
kurir: req.query.id
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!cek_data) return res.status(400).send({ message: 'Data tidak ditemukan', data: null });
|
||||||
|
|
||||||
|
const cek_pengiriman = await pengirimanBarangModel.findOneAndUpdate({
|
||||||
|
_id: id_pengiriman,
|
||||||
|
kurir: req.query.id
|
||||||
|
}
|
||||||
|
, {
|
||||||
|
status_pengiriman: 'Disahkan Kurir',
|
||||||
|
// push to history
|
||||||
|
$push: {
|
||||||
|
history: {
|
||||||
|
status_pengiriman: 'Disahkan Kurir',
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
updated_at: new Date()
|
||||||
|
}
|
||||||
|
, { new: true }
|
||||||
|
);
|
||||||
|
console.log(cek_pengiriman);
|
||||||
|
|
||||||
|
res.status(200).send({ message: 'Pengiriman berhasil disahkan', data: cek_pengiriman });
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
} catch (error) {
|
||||||
|
res.status(500).send({ message: 'Internal Server Error', data: null });
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
// create '/pengirim' get route
|
// create '/pengirim' get route
|
||||||
router.get('/pengirim', async (req, res) => {
|
router.get('/pengirim', cek_user_kurir, async (req, res) => {
|
||||||
console.log('masuk get pengirim');
|
console.log('masuk get pengirim');
|
||||||
// get all pengirim
|
// get all pengirim
|
||||||
const cek_data = await pengirimModel.find().select('-__v -created_at -updated_at');
|
const cek_data = await pengirimModel.find().select('-__v -created_at -updated_at');
|
||||||
res.status(200).send({ message: 'Data berhasil ditemukan', data: cek_data });
|
res.status(200).send({ message: 'Data berhasil ditemukan', data: cek_data });
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
// create '/detail_pengiriman' get route
|
||||||
|
router.get('/detail_pengiriman', cek_user_kurir, async (req, res) => {
|
||||||
|
try{
|
||||||
|
id_pengiriman = req.query.id_pengiriman;
|
||||||
|
// console.log('masuk get detail_pengiriman');
|
||||||
|
|
||||||
|
const cek_data = await pengirimanBarangModel.findOne({
|
||||||
|
_id: id_pengiriman,
|
||||||
|
kurir: req.query.id
|
||||||
|
}).select(' -kurir -__v -pengirim').populate({
|
||||||
|
path: 'pengirim',
|
||||||
|
select: '-__v -created_at -updated_at -status'
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!cek_data) return res.status(400).send({ message: 'Data tidak ditemukan', data: null });
|
||||||
|
res.status(200).send({ message: 'Data berhasil ditemukan', data: cek_data });
|
||||||
|
|
||||||
|
} catch (error) {
|
||||||
|
res.status(500).send({ message: 'Internal Server Error', data: null });
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
// create 'mengambil_paket_pengiriman' post route
|
||||||
|
router.post('/mengambil_paket_pengiriman', cek_user_kurir, async (req, res) => {
|
||||||
|
try {
|
||||||
|
const id_pengiriman = req.body.id_pengiriman;
|
||||||
|
const cek_data = await pengirimanBarangModel.findOne({
|
||||||
|
_id: id_pengiriman,
|
||||||
|
kurir: req.query.id
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!cek_data) return res.status(400).send({ message: 'Data tidak ditemukan', data: null });
|
||||||
|
|
||||||
|
const cek_pengiriman = await pengirimanBarangModel.findOneAndUpdate({
|
||||||
|
_id: id_pengiriman,
|
||||||
|
kurir: req.query.id
|
||||||
|
}
|
||||||
|
, {
|
||||||
|
status_pengiriman: 'Mengambil Paket Pengiriman Dari Pengirim',
|
||||||
|
// push to history
|
||||||
|
$push: {
|
||||||
|
history: {
|
||||||
|
status_pengiriman: 'Mengambil Paket Pengiriman Dari Pengirim',
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
updated_at: new Date()
|
||||||
|
}
|
||||||
|
, { new: true }
|
||||||
|
);
|
||||||
|
console.log(cek_pengiriman);
|
||||||
|
|
||||||
|
res.status(200).send({ message: 'Pengiriman berhasil disahkan', data: cek_pengiriman });
|
||||||
|
} catch (error) {
|
||||||
|
res.status(500).send({ message: 'Internal Server Error', data: null });
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
module.exports = router;
|
module.exports = router;
|
||||||
|
|
||||||
|
|||||||
@ -157,6 +157,9 @@ router.post('/pengiriman_barang', cek_user_pengirim, async (req, res) => {
|
|||||||
biaya: biaya,
|
biaya: biaya,
|
||||||
kurir: id_kurir,
|
kurir: id_kurir,
|
||||||
pengirim: id,
|
pengirim: id,
|
||||||
|
history:{
|
||||||
|
status_pengiriman : "Dalam Pengesahan Kurir"
|
||||||
|
}
|
||||||
});
|
});
|
||||||
console.log(data_created._id, "ini data pengiriman barang")
|
console.log(data_created._id, "ini data pengiriman barang")
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user