fix validator in create cpompany schema
This commit is contained in:
@@ -28,6 +28,7 @@ export const getAllCompanies = async (searchTerm = null, userId = null, userRole
|
|||||||
description: companies.description,
|
description: companies.description,
|
||||||
address: companies.address,
|
address: companies.address,
|
||||||
city: companies.city,
|
city: companies.city,
|
||||||
|
postalCode: companies.postalCode,
|
||||||
country: companies.country,
|
country: companies.country,
|
||||||
phone: companies.phone,
|
phone: companies.phone,
|
||||||
email: companies.email,
|
email: companies.email,
|
||||||
@@ -81,6 +82,7 @@ export const getCompanyById = async (companyId) => {
|
|||||||
description: companies.description,
|
description: companies.description,
|
||||||
address: companies.address,
|
address: companies.address,
|
||||||
city: companies.city,
|
city: companies.city,
|
||||||
|
postalCode: companies.postalCode,
|
||||||
country: companies.country,
|
country: companies.country,
|
||||||
phone: companies.phone,
|
phone: companies.phone,
|
||||||
email: companies.email,
|
email: companies.email,
|
||||||
@@ -110,7 +112,7 @@ export const getCompanyById = async (companyId) => {
|
|||||||
* Create new company
|
* Create new company
|
||||||
*/
|
*/
|
||||||
export const createCompany = async (userId, data) => {
|
export const createCompany = async (userId, data) => {
|
||||||
const { name, description, address, city, country, phone, email, website, status } = data;
|
const { name, description, address, city, postalCode, country, phone, email, website, status } = data;
|
||||||
|
|
||||||
// Check if company with same name already exists
|
// Check if company with same name already exists
|
||||||
const [existing] = await db
|
const [existing] = await db
|
||||||
@@ -130,6 +132,7 @@ export const createCompany = async (userId, data) => {
|
|||||||
description: description || null,
|
description: description || null,
|
||||||
address: address || null,
|
address: address || null,
|
||||||
city: city || null,
|
city: city || null,
|
||||||
|
postalCode: postalCode || null,
|
||||||
country: country || null,
|
country: country || null,
|
||||||
phone: phone || null,
|
phone: phone || null,
|
||||||
email: email || null,
|
email: email || null,
|
||||||
@@ -156,7 +159,7 @@ export const createCompany = async (userId, data) => {
|
|||||||
export const updateCompany = async (companyId, data) => {
|
export const updateCompany = async (companyId, data) => {
|
||||||
const company = await getCompanyById(companyId);
|
const company = await getCompanyById(companyId);
|
||||||
|
|
||||||
const { name, description, address, city, country, phone, email, website, status } = data;
|
const { name, description, address, city, postalCode, country, phone, email, website, status } = data;
|
||||||
|
|
||||||
// If name is being changed, check for duplicates
|
// If name is being changed, check for duplicates
|
||||||
if (name && name !== company.name) {
|
if (name && name !== company.name) {
|
||||||
@@ -178,6 +181,7 @@ export const updateCompany = async (companyId, data) => {
|
|||||||
description: description !== undefined ? description : company.description,
|
description: description !== undefined ? description : company.description,
|
||||||
address: address !== undefined ? address : company.address,
|
address: address !== undefined ? address : company.address,
|
||||||
city: city !== undefined ? city : company.city,
|
city: city !== undefined ? city : company.city,
|
||||||
|
postalCode: postalCode !== undefined ? postalCode : company.postalCode,
|
||||||
country: country !== undefined ? country : company.country,
|
country: country !== undefined ? country : company.country,
|
||||||
phone: phone !== undefined ? phone : company.phone,
|
phone: phone !== undefined ? phone : company.phone,
|
||||||
email: email !== undefined ? email : company.email,
|
email: email !== undefined ? email : company.email,
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ export const createCompanySchema = z.object({
|
|||||||
description: z.string().max(1000).optional(),
|
description: z.string().max(1000).optional(),
|
||||||
address: z.string().max(255).optional(),
|
address: z.string().max(255).optional(),
|
||||||
city: z.string().max(100).optional(),
|
city: z.string().max(100).optional(),
|
||||||
|
postalCode: z.string().max(20).optional().or(z.literal('')),
|
||||||
country: z.string().max(100).optional(),
|
country: z.string().max(100).optional(),
|
||||||
phone: z.string().max(50).optional(),
|
phone: z.string().max(50).optional(),
|
||||||
email: z.string().email('Neplatný formát emailu').max(255).optional().or(z.literal('')),
|
email: z.string().email('Neplatný formát emailu').max(255).optional().or(z.literal('')),
|
||||||
@@ -23,6 +24,7 @@ export const updateCompanySchema = z.object({
|
|||||||
description: z.string().max(1000).optional(),
|
description: z.string().max(1000).optional(),
|
||||||
address: z.string().max(255).optional(),
|
address: z.string().max(255).optional(),
|
||||||
city: z.string().max(100).optional(),
|
city: z.string().max(100).optional(),
|
||||||
|
postalCode: z.string().max(20).optional().or(z.literal('').or(z.null())),
|
||||||
country: z.string().max(100).optional(),
|
country: z.string().max(100).optional(),
|
||||||
phone: z.string().max(50).optional(),
|
phone: z.string().max(50).optional(),
|
||||||
email: z.string().email('Neplatný formát emailu').max(255).optional().or(z.literal('')),
|
email: z.string().email('Neplatný formát emailu').max(255).optional().or(z.literal('')),
|
||||||
|
|||||||
Reference in New Issue
Block a user