delivery boy phone verification

master
Bhaskara Kishore 3 years ago
parent c78755ae4b
commit 642b4fa267

@ -403,13 +403,17 @@ exports.sendSms = async (request, reply) => {
const message = `Welcome to Arminta !!! your OTP is ${code} please use it for login.`//`Welcome to Arminta !!! your OTP is ${code} please use it for login.`; const message = `Welcome to Arminta !!! your OTP is ${code} please use it for login.`//`Welcome to Arminta !!! your OTP is ${code} please use it for login.`;
const user = await User.findOne({phone: mobile}) const user = await User.findOne({phone: mobile})
const supplier = await Supplier.findOne({phone: mobile}) const supplier = await Supplier.findOne({phone: mobile})
const deliveryBoy = await DeliveryBoy.findOne( { phone : mobile})
if(user){ if(user){
await User.findOneAndUpdate({phone: mobile}, { $set: {'phoneVerificationCode': code } }) await User.findOneAndUpdate({phone: mobile}, { $set: {'phoneVerificationCode': code } })
} }
if(supplier){ if(supplier){
await Supplier.findOneAndUpdate({phone: mobile}, { $set: {'phoneVerificationCode': code } }) await Supplier.findOneAndUpdate({phone: mobile}, { $set: {'phoneVerificationCode': code } })
} }
if(deliveryBoy){
await DeliveryBoy.findOneAndUpdate({phone: mobile}, { $set: {'phoneVerificationCode': code } })
}
const apiUrl = `https://smslogin.co/v3/api.php?username=${username}&apikey=${apiKey}&senderid=${senderId}&mobile=${mobile}&message=${encodeURIComponent(message)}`; const apiUrl = `https://smslogin.co/v3/api.php?username=${username}&apikey=${apiKey}&senderid=${senderId}&mobile=${mobile}&message=${encodeURIComponent(message)}`;
const options = { const options = {

@ -1,5 +1,5 @@
//Get the data models //Get the data models
const { Supplier } = require('../models/supplier'); const { Supplier, DeliveryBoy } = require('../models/supplier');
const { FriendRequest } = require('../models/supplier') const { FriendRequest } = require('../models/supplier')
const { ProfilePicture } = require('../models/User') const { ProfilePicture } = require('../models/User')
const supplierController = require("../controllers/supplierController"); const supplierController = require("../controllers/supplierController");
@ -633,7 +633,65 @@ exports.logoutsupplier = async (request, reply) => {
throw boom.boomify(err); throw boom.boomify(err);
} }
}; };
exports.deliveryBoyVerifyPhone = async (req, reply) => {
console.log("-------------------------------------------------");
try {
phone = req.body.phone;
phoneVerificationCode = req.body.phoneVerificationCode;
// check if user exists in the system. If user exists , display message that
// username is not available
console.log(
"this is the phone and verification code",
phone,
phoneVerificationCode
);
deliveryBoyExists = await DeliveryBoy.findOne({
phone: phone,
phoneVerified: false,
phoneVerificationCode: phoneVerificationCode,
});
console.log(deliveryBoyExists);
if (deliveryBoyExists) {
// update the phoneVerified flag to true.
const filter = {
phone: phone,
phoneVerificationCode: phoneVerificationCode,
};
const update = { phoneVerified: true };
const doc = await DeliveryBoy.findOneAndUpdate(filter, update);
updatedDeliveryBoy = await DeliveryBoy.findOne({ phone: phone });
if (updatedDeliveryBoy.phoneVerified) {
reply.send('{"armintatankdata":{"error":false,"verified": true}}');
} else {
error = {
armintatankdata: {
error: true,
code: 10005,
message: "10005 - Verification code entered cannot be validated.",
},
};
req.body.regError = error;
reply.send(error);
}
} else {
error = {
armintatankdata: {
error: true,
code: 10005,
message: "10005 - Verification code entered cannot be validated.",
},
};
req.body.regError = error;
reply.send(error);
}
} catch (err) {
throw boom.boomify(err);
}
};
// Get current supplier // Get current supplier
exports.getCurrentSupplier = async (req, reply) => { exports.getCurrentSupplier = async (req, reply) => {

@ -217,6 +217,32 @@ module.exports = function (fastify, opts, next) {
}); });
fastify.route({
method: "POST",
url: "/api/deliveryboyphone",
schema: {
tags: ["Supplier-Data"],
description: "This is for verify Delivery Boy Phone",
summary: "This is to Verify Delivery Boy Phone.",
body: {
type: "object",
required: ["phone"],
properties: {
phoneVerificationCode: { type: "string" },
phone: { type: "string" },
},
},
security: [
{
basicAuth: [],
},
],
},
// preHandler: fastify.auth([fastify.authenticate]),
handler: validationHandler.deliveryBoyVerifyPhone,
});
fastify.route({ fastify.route({
method: "POST", method: "POST",
url: "/api/suppliers/:supplierId", url: "/api/suppliers/:supplierId",

Loading…
Cancel
Save