added some endpoint

This commit is contained in:
kicap1992
2022-06-26 00:47:48 +08:00
parent 07299cbc62
commit 0f8229d8ec
5 changed files with 170 additions and 63 deletions

View File

@ -6,7 +6,7 @@ const { pengirimModel, kurirModel, loginUserModel } = require('../models/users_m
const { pengaturanPengirimanModel } = require('../models/kurir_model');
const {pengirimanBarangModel} = require('../models/pengirim_model');
const { pengirimanBarangModel } = require('../models/pengirim_model');
let googlenya = require('../google/googleapi.js');
@ -17,6 +17,9 @@ const ktp_holding_kurir_folder_id = process.env.KTP_HOLDING_KURIR_FOLDER_ID;
const kenderaan_kurir_folder_id = process.env.KENDERAAN_KURIR_FOLDER_ID;
const foto_barangan_pengiriman_folder_id = process.env.FOTO_BARANG_PENGIRIMAN_ID;
const io = require("socket.io-client");
const socket = io("http://localhost:3001/");
async function cek_user_pengirim(req, res, next) {
if (req.query.username == null && req.query.password == null && req.query.id == null) return res.status(401).send({ message: 'Not Authorized' });
const cek_login = await loginUserModel.findOne({
@ -45,7 +48,7 @@ router.get('/kurir', async (req, res) => {
try {
const data = await kurirModel.find({
status: 'Aktif'
}).select('-email -created_at -updated_at -__v -ktp_url -alamat').populate(
}).select(' -created_at -updated_at -__v -ktp_url -alamat').populate(
{
path: 'pengaturan_pengiriman',
}
@ -120,54 +123,69 @@ router.get('/kurir/filter/', cek_user_pengirim, async (req, res) => {
})
// create '/pengiriman_barang' post route
router.post('/pengiriman_barang', async (req, res) => {
router.post('/pengiriman_barang', cek_user_pengirim, async (req, res) => {
const id = req.query.id;
const id_kurir = req.body.id_kurir;
const nama_penerima = req.body.nama_penerima;
const no_telpon_penerima = req.body.no_telpon_penerima;
const alamat_penerima = req.body.alamat_penerima;
const lat_lokasi_pengiriman = req.body.lat_lokasi_pengiriman;
const long_lokasi_pengiriman = req.body.long_lokasi_pengiriman;
const kelurahan_desa = req.body.kelurahan_desa;
const foto_pengiriman = req.files.foto_pengiriman;
const data = (req.body.data != null && req.body.data != '') ? JSON.parse(req.body.data) : null;
const data = await pengirimanBarangModel.create({
const id_kurir = data.id_kurir;
const nama_penerima = data.nama_penerima;
const no_telpon_penerima = data.no_telpon_penerima;
const alamat_penerima = data.alamat_penerima;
const lokasi_pengiriman = data.lokasi_pengiriman;
const kelurahan_desa_pengiriman = data.kelurahan_desa_pengiriman;
const lokasi_permulaan = data.lokasi_permulaan;
const biaya = data.biaya;
const foto_pengiriman = req.files.foto_pengiriman;
// console.log(id , id_kurir , nama_penerima , no_telpon_penerima , alamat_penerima , lokasi_pengiriman[0] , kelurahan_desa_pengiriman , lokasi_permulaan[1] , ":ini datanya");
const data_created = await pengirimanBarangModel.create({
nama_penerima: nama_penerima,
no_telpon_penerima: no_telpon_penerima,
alamat_penerima : alamat_penerima,
alamat_penerima: alamat_penerima,
kordinat_pengiriman: {
lat: lat_lokasi_pengiriman,
lng: long_lokasi_pengiriman
lat: lokasi_pengiriman[0],
lng: lokasi_pengiriman[1],
kelurahan_desa: kelurahan_desa_pengiriman,
},
kelurahan_desa: kelurahan_desa,
// foto_pengiriman: "ini url foto",
kurir : id_kurir,
pengirim : id,
kordinat_permulaan: {
lat: lokasi_permulaan[0],
lng: lokasi_permulaan[1],
},
biaya: biaya,
kurir: id_kurir,
pengirim: id,
});
// console.log(data._id , "ini data pengiriman barang")
console.log(data_created._id, "ini data pengiriman barang")
await pengirimModel.findByIdAndUpdate(id, {
$push: {
pengiriman_barang: data._id
pengiriman_barang: data_created._id
}
})
await kurirModel.findByIdAndUpdate(id_kurir, {
$push: {
pengiriman_barang: data._id
pengiriman_barang: data_created._id
}
})
res.status(200).send({ message: 'connected to pengiriman_barang' })
res.status(200).send({ message: 'Berhasil menambahkan pengiriman barang' });
let id_photo = googlenya.uploadFile(data._id+".jpg", foto_pengiriman.path,foto_barangan_pengiriman_folder_id,"ini photo barang kiriman");
let id_photo = googlenya.uploadFile(data_created._id + ".jpg", foto_pengiriman.path, foto_barangan_pengiriman_folder_id, "ini photo barang kiriman");
const photo_url = `https://drive.google.com/uc?export=view&id=${await id_photo}`
await pengirimanBarangModel.findByIdAndUpdate(data._id, {
await pengirimanBarangModel.findByIdAndUpdate(data_created._id, {
foto_pengiriman: photo_url
})
socket.emit('pengiriman_create', {
id_pengiriman: data_created._id,
id_pengirim: id,
})
// const idnya= "62940077b44339ec97fe519e"
// const id_pengirim = '6260ba6b7b7d7a951d03d285'
@ -186,12 +204,34 @@ router.post('/pengiriman_barang', async (req, res) => {
// pengiriman_barang: idnya
// }
// })
// console.log(id , id_kurir, nama_penerima, no_telpon_penerima, alamat_penerima, lat_lokasi_pengiriman, long_lokasi_pengiriman, kelurahan_desa, foto_pengiriman , "ini data yang dikirim");
})
// create '/log_kiriman' get route
// router.get('/log_kiriman', cek_user_pengirim, async (req, res) => {
router.get('/log_kiriman', async (req, res) => {
const id = req.query.id;
const data = await pengirimanBarangModel.find({
pengirim: id,
}).select('-pengirim -__v').populate({
path: 'kurir',
select: '-email -created_at -updated_at -__v -ktp_url -alamat -pengiriman_barang -ktp_holding_url -nik',
})
res.status(200).send({ data: data });
})
// create '/coba2' get route
router.get('/coba2', async (req, res) => {
console.log("sini berlaku coba2 notif")
socket.emit('coba2', {
data: 'coba2'
})
res.status(200).send({ message: 'coba2' });
})
module.exports = router;