added some endpoint
This commit is contained in:
@ -3,7 +3,8 @@ const router = express.Router();
|
||||
const md5 = require('md5');
|
||||
|
||||
const { pengaturanPengirimanModel } = require('../models/kurir_model');
|
||||
const { kurirModel, loginUserModel } = require('../models/users_model');
|
||||
const { kurirModel, loginUserModel , pengirimModel} = require('../models/users_model');
|
||||
const { pengirimanBarangModel } = require('../models/pengirim_model');
|
||||
|
||||
let googlenya = require('../google/googleapi.js');
|
||||
const pengirim_folder_id = process.env.PENGIRIM_FOLDER_ID;
|
||||
@ -42,22 +43,22 @@ router.post('/pengaturan', cek_user_kurir, async (req, res) => {
|
||||
datanya = await pengaturanPengirimanModel.findOneAndUpdate({
|
||||
kurir: req.query.id,
|
||||
}, {
|
||||
biaya_minimal: minimal_biaya_pengiriman,
|
||||
biaya_maksimal: maksimal_biaya_pengiriman,
|
||||
biaya_per_kilo: biaya_per_kilo,
|
||||
updated_at: new Date()
|
||||
biaya_minimal: minimal_biaya_pengiriman,
|
||||
biaya_maksimal: maksimal_biaya_pengiriman,
|
||||
biaya_per_kilo: biaya_per_kilo,
|
||||
updated_at: new Date()
|
||||
})
|
||||
|
||||
await kurirModel.findOneAndUpdate({
|
||||
_id: req.query.id
|
||||
},{
|
||||
}, {
|
||||
pengaturan_pengiriman: datanya._id
|
||||
})
|
||||
message = 'Pengaturan pengiriman berhasil diubah';
|
||||
|
||||
} else {
|
||||
datanya = new pengaturanPengirimanModel({
|
||||
kurir : req.query.id,
|
||||
kurir: req.query.id,
|
||||
biaya_minimal: minimal_biaya_pengiriman,
|
||||
biaya_maksimal: maksimal_biaya_pengiriman,
|
||||
biaya_per_kilo,
|
||||
@ -67,12 +68,12 @@ router.post('/pengaturan', cek_user_kurir, async (req, res) => {
|
||||
await datanya.save();
|
||||
await kurirModel.findOneAndUpdate({
|
||||
_id: req.query.id
|
||||
},{
|
||||
}, {
|
||||
pengaturan_pengiriman: datanya._id
|
||||
})
|
||||
|
||||
// save to pengaturanPengirimanModel reference to kurirModel
|
||||
|
||||
|
||||
message = 'Pengaturan biaya pengiriman berhasil dibuat';
|
||||
console.log("data baru");
|
||||
}
|
||||
@ -82,14 +83,42 @@ router.post('/pengaturan', cek_user_kurir, async (req, res) => {
|
||||
|
||||
// create '/pengaturan' get route
|
||||
router.get('/pengaturan', cek_user_kurir, async (req, res) => {
|
||||
// router.get('/pengaturan', async (req, res) => {
|
||||
// router.get('/pengaturan', async (req, res) => {
|
||||
console.log('masuk get pengaturan');
|
||||
const cek_data = await pengaturanPengirimanModel.findOne({
|
||||
kurir: req.query.id
|
||||
});
|
||||
if (!cek_data) return res.status(200).send({ message: 'Pengaturan tidak ditemukan' , data: null});
|
||||
if (!cek_data) return res.status(200).send({ message: 'Pengaturan tidak ditemukan', data: null });
|
||||
res.status(200).send({ message: 'Pengaturan pengiriman berhasil ditemukan', data: cek_data });
|
||||
})
|
||||
|
||||
// create '/pengiriman_kurir_dalam_pengesahan' get route
|
||||
router.get('/pengiriman_kurir_dalam_pengesahan', async (req, res) => {
|
||||
try {
|
||||
console.log('masuk get pengiriman_kurir_dalam_pengesahan');
|
||||
const cek_data = await pengirimanBarangModel.find({
|
||||
kurir: req.query.id,
|
||||
status: 'Dalam Pengesahan Kurir'
|
||||
}).select(' -kurir -__v ').populate({
|
||||
path: 'pengirim',
|
||||
select: '-__v -created_at -updated_at -status'
|
||||
|
||||
});
|
||||
res.status(200).send({ message: 'Data berhasil ditemukan', data: cek_data });
|
||||
} catch (error) {
|
||||
res.status(500).send({ message: 'Internal Server Error', data: null });
|
||||
}
|
||||
|
||||
|
||||
})
|
||||
|
||||
// create '/pengirim' get route
|
||||
router.get('/pengirim', async (req, res) => {
|
||||
console.log('masuk get pengirim');
|
||||
// get all pengirim
|
||||
const cek_data = await pengirimModel.find().select('-__v -created_at -updated_at');
|
||||
res.status(200).send({ message: 'Data berhasil ditemukan', data: cek_data });
|
||||
})
|
||||
|
||||
module.exports = router;
|
||||
|
||||
|
||||
@ -57,7 +57,7 @@ router.get('/', async (req, res) => {
|
||||
return;
|
||||
}
|
||||
|
||||
console.log(user);
|
||||
// console.log(user);
|
||||
|
||||
res.status(200).send({
|
||||
status: true,
|
||||
@ -108,8 +108,8 @@ router.post('/daftar1', async (req, res) => {
|
||||
|
||||
// check if data.no_telp is exists
|
||||
let isExist2 = await kurirModel.findOne({ no_telp: data.no_telp });
|
||||
console.log(isExist2)
|
||||
console.log("ini untuk no telpon")
|
||||
// console.log(isExist2)
|
||||
// console.log("ini untuk no telpon")
|
||||
if (isExist2) {
|
||||
let message = (isExist2.status == 'Evaluasi') ? 'No Telpon ini telah terdaftar sebelumnya dan sekarang dalam evaluasi tim kami.\n Jika anda pemilik no telpon ini, Tim kami akan mengirim ke email yang anda daftarkan sebelumnya untuk konfirmasi pendaftaran' : 'No Telpon Sudah Terdaftar dan sudah diaktifkan';
|
||||
res.status(400).send({
|
||||
@ -122,8 +122,8 @@ router.post('/daftar1', async (req, res) => {
|
||||
|
||||
// check if data.email is exists
|
||||
let isExist3 = await kurirModel.findOne({ email: data.email });
|
||||
console.log(isExist3)
|
||||
console.log("ini untuk email")
|
||||
// console.log(isExist3)
|
||||
// console.log("ini untuk email")
|
||||
if (isExist3) {
|
||||
let message = (isExist3.status == 'Evaluasi') ? 'Email ini telah terdaftar sebelumnya dan sekarang dalam evaluasi tim kami.\nTim kami akan mengirim ke email ini yang anda daftarkan sebelumnya untuk konfirmasi pendaftaran' : 'Email Sudah Terdaftar dan sudah diaktifkan';
|
||||
res.status(400).send({
|
||||
@ -146,15 +146,15 @@ router.post('/daftar1', async (req, res) => {
|
||||
|
||||
|
||||
res.send({ status: true, message: 'Anda akan mendapat notifikasi di email anda dan juga no telpon jika admin menyetujui ataupun membatalkan pendaftaran anda' });
|
||||
console.log(data)
|
||||
// console.log(data)
|
||||
let new_kurir = new kurirModel(data);
|
||||
|
||||
let new_login = new loginUserModel(data);
|
||||
new_login._idnya = new_kurir._id;
|
||||
await new_kurir.save();
|
||||
await new_login.save();
|
||||
console.log(new_kurir)
|
||||
console.log(new_login)
|
||||
// console.log(new_kurir)
|
||||
// console.log(new_login)
|
||||
|
||||
|
||||
// add photo_url to new_kurir
|
||||
@ -247,13 +247,13 @@ router.post('/daftar1', async (req, res) => {
|
||||
|
||||
new_pengirim.photo_url = `https://drive.google.com/uc?export=view&id=${await id_photo}`
|
||||
|
||||
console.log(new_pengirim)
|
||||
// console.log(new_pengirim)
|
||||
|
||||
let new_login = new loginUserModel(data);
|
||||
|
||||
// push new_pengirim._id to new_login._idnya
|
||||
new_login._idnya = new_pengirim._id;
|
||||
console.log(new_login);
|
||||
// console.log(new_login);
|
||||
|
||||
await new_pengirim.save();
|
||||
await new_login.save();
|
||||
|
||||
@ -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;
|
||||
Reference in New Issue
Block a user