ashok 10 months ago
commit 8603722868

@ -42,6 +42,10 @@ exports.installSignUp = async (request, reply) => {
firstName,
lastName,
city,
designation,
reportingManager,
departmentName,
zone,
createdBy,
updatedBy,
} = request.body;
@ -75,6 +79,10 @@ exports.installSignUp = async (request, reply) => {
firstName,
lastName,
city,
designation,
reportingManager,
departmentName,
zone,
createdBy,
updatedBy,
});
@ -283,6 +291,10 @@ exports.addStore = async (request, reply) => {
const {
storename,
phone,
zone,
departmentName,
designation,
reportingManager,
contactPersonName,
contactPersonPhone,
emails,
@ -329,6 +341,10 @@ exports.addStore = async (request, reply) => {
const store = new Store({
storename,
phone,
zone,
departmentName,
designation,
reportingManager,
contactPersonName,
contactPersonPhone,
storeId,
@ -374,12 +390,16 @@ exports.addSales = async (request, reply) => {
username,
emails,
password,
zone,
departmentName,
designation,
reportingManager,
profile,
createdBy,
updatedBy,
} = request.body;
const { firstName, lastName ,address} = profile || {};
const { firstName, lastName ,address,city,state,country,zip} = profile || {};
const existingStore = await Sales.findOne({ phone });
if (existingStore) {
@ -394,11 +414,19 @@ exports.addSales = async (request, reply) => {
phone,
address,
emails,
zone,
departmentName,
designation,
reportingManager,
services: { password: { bcrypt: hashedPassword } },
profile: {
firstName,
lastName,
address,
city,
state,
country,
zip,
...profile,
},
createdBy,
@ -476,7 +504,11 @@ exports.editSalesUser = async (request, reply) => {
phone,
emails,
address,
profile,
profile,
zone,
reportingManager,
designation,
departmentName
} = request.body;
@ -494,13 +526,21 @@ exports.editSalesUser = async (request, reply) => {
existingSales.username = username || existingSales.username;
existingSales.phone = phone || existingSales.phone;
existingSales.emails = emails || existingSales.emails;
existingSales.zone = zone || existingSales.zone;
existingSales.reportingManager = reportingManager || existingSales.reportingManager;
existingSales.designation = designation || existingSales.designation;
existingSales.departmentName = departmentName || existingSales.departmentName;
if (profile) {
existingSales.profile.firstName = profile.firstName || existingSales.profile.firstName;
existingSales.profile.lastName = profile.lastName || existingSales.profile.lastName;
existingSales.profile.address = profile.address || existingSales.profile.address;
existingSales.profile.city = profile.city || existingSales.profile.city;
existingSales.profile.state = profile.state || existingSales.profile.state;
existingSales.profile.country = profile.country || existingSales.profile.country;
existingSales.profile.zip = profile.zip || existingSales.profile.zip;
}
@ -536,7 +576,11 @@ exports.editStore = async (request, reply) => {
description,
startingPrice,
password,
contactPersonPhone
contactPersonPhone,
zone,
reportingManager,
designation,
departmentName
} = request.body;
@ -564,6 +608,10 @@ exports.editStore = async (request, reply) => {
existingStore.description = description || existingStore.description;
existingStore.startingPrice = startingPrice || existingStore.startingPrice;
existingStore.contactPersonPhone = contactPersonPhone || existingStore.contactPersonPhone;
existingStore.zone = zone || existingStore.zone;
existingStore.reportingManager = reportingManager || existingStore.reportingManager;
existingStore.designation = designation || existingStore.designation;
existingStore.departmentName = departmentName || existingStore.departmentName;
if (profile) {

@ -42,6 +42,11 @@ const installationschema = new mongoose.Schema({
address1: { type: String, default: null },
address2: { type: String, default: null },
city: { type: String, default: null },
designation: { type: String, default: null },
reportingManager: { type: String, default: null },
departmentName: { type: String, default: null },
zone: { type: String, default: null },
profile: {
state: { type: String, default: null },
@ -123,6 +128,10 @@ const installationschema = new mongoose.Schema({
passwordResetCode: { type: Number, default: 11111 },
oneTimePasswordSetFlag: { type: Boolean, default: false },
emails: {type: String},
designation: { type: String, default: null },
reportingManager: { type: String, default: null },
departmentName: { type: String, default: null },
zone: { type: String, default: null },
services: {
password: {
bcrypt: { type: String, required: true }
@ -339,6 +348,10 @@ const salesSchema = new mongoose.Schema({
}
},
description: { type: String, default: null },
designation: { type: String, default: null },
reportingManager: { type: String, default: null },
departmentName: { type: String, default: null },
zone: { type: String, default: null },
profile: {
role: [{ type: String, default: "sales" }],
firstName: { type: String, default: null },

@ -31,6 +31,10 @@ module.exports = function (fastify, opts, next) {
//name: { type: 'string' },
team: { type: 'string', default: null },
zone: { type: 'string', default: null },
designation: { type: 'string', default: null },
reportingManager: { type: 'string', default: null },
departmentName: { type: 'string', default: null },
manager: { type: 'string', default: null },
address: { type: 'string', default: null },
address1: { type: 'string', default: null },
@ -102,6 +106,10 @@ fastify.post('/api/stores', {
properties: {
storename: { type: "string" },
password: {type: "string"},
zone: { type: 'string', default: null },
designation: { type: 'string', default: null },
reportingManager: { type: 'string', default: null },
departmentName: { type: 'string', default: null },
phone: { type: "string", unique: true, trim: true },
contactPersonName: { type: "string" },
contactPersonPhone: { type: "string", unique: true, trim: true },
@ -143,6 +151,11 @@ fastify.post('/api/salesSignUp', {
type: "object",
properties: {
username: { type: "string" },
designation: { type: 'string', default: null },
reportingManager: { type: 'string', default: null },
departmentName: { type: 'string', default: null },
zone: { type: 'string', default: null },
phone: { type: "string" },
password: { type: "string" },
emails: { type: "string" },
@ -153,6 +166,10 @@ fastify.post('/api/salesSignUp', {
firstName: { type: "string" },
lastName: { type: "string" },
address: { type: "string" },
city: { type: 'string', default: null },
state: { type: 'string', default: null },
zip: { type: 'string', default: null },
country: { type: 'string', default: null },
},
required: ["firstName", "lastName"]
}
@ -262,6 +279,10 @@ fastify.put('/api/editSalesUser/:salesId', {
properties: {
username: { type: "string" },
phone: { type: "string" },
zone: { type: 'string', default: null },
designation: { type: 'string', default: null },
reportingManager: { type: 'string', default: null },
departmentName: { type: 'string', default: null },
password: { type: "string" },
emails: { type: "string" },
address: { type: "string" },
@ -270,7 +291,11 @@ fastify.put('/api/editSalesUser/:salesId', {
properties: {
firstName: { type: "string" },
lastName: { type: "string" },
address: { type: "string" }
address: { type: "string" },
city: { type: 'string', default: null },
state: { type: 'string', default: null },
zip: { type: 'string', default: null },
country: { type: 'string', default: null },
},
}
@ -302,6 +327,10 @@ fastify.put('/api/editStore/:storeId', {
address1: { type: "string" },
address2: { type: "string" },
emails: { type: "string" },
zone: { type: 'string', default: null },
designation: { type: 'string', default: null },
reportingManager: { type: 'string', default: null },
departmentName: { type: 'string', default: null },
profile: {
type: "object",
properties: {
@ -400,9 +429,9 @@ fastify.delete("/api/deleteInstaller/:installationId", {
fastify.put("/api/updaeInstaller/:installationId", {
schema: {
description: "Update user details by installationId",
description: "Update installer details by installationId",
tags: ["Install Management"],
summary: "Update user",
summary: "Update installer details by installationId",
params: {
type: "object",
properties: {
@ -417,6 +446,10 @@ fastify.put("/api/updaeInstaller/:installationId", {
password: { type: "string" },
emails: { type: "array", items: { type: "object", properties: { email: { type: "string" } } } },
team: { type: "string" },
zone: { type: 'string', default: null },
designation: { type: 'string', default: null },
reportingManager: { type: 'string', default: null },
departmentName: { type: 'string', default: null },
manager: { type: "string" },
address: { type: "string" },
address1: { type: "string" },

Loading…
Cancel
Save