Class: FmeaService
Defined in: packages/web-backend/src/fmea/fmea.service.ts:13
Service layer for FMEA business logic and persistence. Supports CRUD operations on FMEA columns, rows, and cells.
Constructors
Constructor
new FmeaService(
fmeaModel,ModelCounterModel):FmeaService
Defined in: packages/web-backend/src/fmea/fmea.service.ts:19
Parameters
fmeaModel
Model<FmeaDocument>
Mongoose model for FMEA documents.
ModelCounterModel
Model<ModelCounterDocument>
Mongoose model for sequence counters.
Returns
FmeaService
Methods
addColumn()
addColumn(
fmeaId,body):Promise<Fmea>
Defined in: packages/web-backend/src/fmea/fmea.service.ts:102
Add a column to the FMEA. If the column type is "string" then dropdown options are empty; if it is "dropdown" then options are populated.
Parameters
fmeaId
number
FMEA ID to add the column to
body
any
Contains new column name, type, and dropdown options
Returns
Promise<Fmea>
The updated FMEA
addRow()
addRow(
fmeaId):Promise<Fmea>
Defined in: packages/web-backend/src/fmea/fmea.service.ts:140
Add a new row to the FMEA. For columns of type string the value is initialized as empty string, and for dropdown columns it is set to the first option.
Parameters
fmeaId
number
The ID of the FMEA to update
Returns
Promise<Fmea>
The FMEA with the added row
createFmea()
createFmea(
body):Promise<Fmea>
Defined in: packages/web-backend/src/fmea/fmea.service.ts:61
Create a new FMEA.
Parameters
body
any
Contains title and description
Returns
Promise<Fmea>
The created FMEA object
deleteColumn()
deleteColumn(
fmeaId,column):Promise<Fmea>
Defined in: packages/web-backend/src/fmea/fmea.service.ts:272
Delete a column from an FMEA.
Parameters
fmeaId
number
The FMEA ID
column
string
The column to be deleted
Returns
Promise<Fmea>
Updated FMEA object
deleteFmea()
deleteFmea(
id):Promise<boolean>
Defined in: packages/web-backend/src/fmea/fmea.service.ts:260
Delete an FMEA by ID.
Parameters
id
number
The FMEA ID
Returns
Promise<boolean>
True if the FMEA was deleted; otherwise false
deleteRow()
deleteRow(
fmeaId,rowId):Promise<Fmea>
Defined in: packages/web-backend/src/fmea/fmea.service.ts:291
Delete a row from an FMEA.
Parameters
fmeaId
number
The FMEA ID
rowId
The row ID to be deleted
string | number
Returns
Promise<Fmea>
Updated FMEA object
getFmeaById()
getFmeaById(
id):Promise<Fmea>
Defined in: packages/web-backend/src/fmea/fmea.service.ts:81
Get an FMEA by ID.
Parameters
id
number
The unique ID for the FMEA
Returns
Promise<Fmea>
The FMEA found
getNextValue()
getNextValue(
name):Promise<number>
Defined in: packages/web-backend/src/fmea/fmea.service.ts:33
Create or increment a named counter. Generates an ID for the newly created user in an incremental order of 1. Initially if no model exists, the serial ID starts from 1.
Parameters
name
string
Name of the counter
Returns
Promise<number>
ID number
getNumberOfFmea()
getNumberOfFmea():
Promise<number>
Defined in: packages/web-backend/src/fmea/fmea.service.ts:90
Get the number of FMEAs in the database.
Returns
Promise<number>
Number of FMEAs in the database
getValue()
getValue(
name):Promise<number>
Defined in: packages/web-backend/src/fmea/fmea.service.ts:50
Read the current value of a named counter. Generates an ID for the newly created user in an incremental order of 1. Initially if no user exists, the serial ID starts from 1.
Parameters
name
string
Name of the counter
Returns
Promise<number>
ID number
updateCell()
updateCell(
fmeaId,rowId,column,value):Promise<boolean>
Defined in: packages/web-backend/src/fmea/fmea.service.ts:170
Update a cell value in a row. If the column is of type dropdown then the value is updated only if found in dropdown options.
Parameters
fmeaId
number
The ID of the FMEA to be updated
rowId
string
The ID of the row being updated
column
string
The column to update
value
string
The new value to be stored at the given row and column
Returns
Promise<boolean>
True if the cell is updated; otherwise false
updateColumn()
updateColumn(
fmeaId,column,columnObject):Promise<Fmea>
Defined in: packages/web-backend/src/fmea/fmea.service.ts:236
Update a column's metadata.
Parameters
fmeaId
number
The FMEA ID
column
string
The column to update
columnObject
any
The column object containing name, type, and dropdown options
Returns
Promise<Fmea>
Updated FMEA object
updateColumnDetails()
updateColumnDetails(
fmeaId,prev_name,column_body):Promise<Fmea>
Defined in: packages/web-backend/src/fmea/fmea.service.ts:368
Update column details (name, type, options).
Parameters
fmeaId
number
The FMEA id whose column should be updated
prev_name
string
Name of the column previously stored
column_body
any
Updated details of the column
Returns
Promise<Fmea>
Updated FMEA object
updateColumnName()
updateColumnName(
fmeaId,column,newColumn):Promise<Fmea>
Defined in: packages/web-backend/src/fmea/fmea.service.ts:309
Update a column's name.
Parameters
fmeaId
number
The FMEA ID
column
string
The column to be updated
newColumn
string
The new column name
Returns
Promise<Fmea>
Updated FMEA object
updateColumnType()
updateColumnType(
fmeaId,body):Promise<Fmea>
Defined in: packages/web-backend/src/fmea/fmea.service.ts:332
Update a column's type and related details.
Parameters
fmeaId
number
The FMEA ID
body
any
Old column name and new column, dropdown options, and type
Returns
Promise<Fmea>
Updated FMEA object
updateDropdownOptions()
updateDropdownOptions(
fmeaId,column,dropdownOptions):Promise<Fmea>
Defined in: packages/web-backend/src/fmea/fmea.service.ts:203
Update dropdown options for a column. If the column type is string then options are not updated.
Parameters
fmeaId
number
FMEA ID
column
string
Column whose options should be updated
dropdownOptions
object[]
Updated array of dropdown options
Returns
Promise<Fmea>
The updated FMEA if changed; otherwise the original FMEA
