From: charleswrayjr Date: Fri, 12 Sep 2025 01:57:30 +0000 (-0500) Subject: Cleaning up the phone_number.model.js file. X-Git-Url: https://git.phasecustomsoft.com/static/git-favicon.png?a=commitdiff_plain;h=efec9e31486d6c716545a3f79067a9382207f5b3;p=phs-api.git Cleaning up the phone_number.model.js file. --- diff --git a/src/models/phone_number.model.js b/src/models/phone_number.model.js index ea786a4..d1a1c23 100644 --- a/src/models/phone_number.model.js +++ b/src/models/phone_number.model.js @@ -2,7 +2,7 @@ * @file Phone number model for phase.phone_numbers table */ -const { Model, ValidationError } = require( './model' ); +const { Model, NotFoundError, FailedToCreateError, ValidationError } = require( './model' ); /** * @typedef {Object} PhoneNumber @@ -55,13 +55,14 @@ class PhoneNumber extends Model { `; this.default_order_by = 'ORDER BY pn.number ASC'; this.instance = _props => new PhoneNumber( _props ); - } + }; /** * Create a new phone number * @param {Omit} phone_data - Phone number data * @returns {Promise} Created phone number instance * @throws {ValidationError} If required fields are missing + * @throws {FailedToCreateError} If creation fails */ static async create( phone_data ) { const { name = 'mobile', type = 'mobile', number, created_by_id = null } = phone_data; @@ -73,17 +74,10 @@ class PhoneNumber extends Model { `; const values = [name, type, number, created_by_id]; const result = await phsdb.query( query_str, values, { plain:true } ); - if (!result) throw new ValidationError( 'Failed to create phone number' ); + if (!result) throw new FailedToCreateError( 'Failed to create phone number' ); return new PhoneNumber( result ); }; - static async add_user( user_id ) { - const done = await require( 'user_phone_number.model' ).add_relation( user_id, this.id ); - if (!done) throw new ValidationError( 'Failed to add phone number' ); - return done; - }; - - // noinspection JSUnusedGlobalSymbols /** * Find phone number by number * @param {string} number - Phone number to search for @@ -99,6 +93,7 @@ class PhoneNumber extends Model { * @param {number|string} deleted_by_id - ID of user performing deletion * @returns {Promise} Updated phone number instance * @throws {ValidationError} If deleted_by_id is invalid + * @throws {NotFoundError} If record not found */ async soft_delete( deleted_by_id ) { const deleted_by_id_int = parseInt( deleted_by_id, 10 );