Software Design Description: Deleted Devices Report
This document describes the logging mechanism for tracking deleted devices within the system and generating reports for audit and operational analysis.
1. Overview
This feature introduces a logging mechanism for tracking deleted devices within the system and generating reports for audit and operational analysis. Devices deleted either manually, via API, by ACS, or through auto-deletion are logged. Devices that are re-registered are removed from this log.
2. Database Changes
A new table cpe_deleted_log is introduced in schema ftacs:
<changeSet id="v6.4.8.35433-1" author="vadim">
<createTable tableName="cpe_deleted_log" schemaName="ftacs">
<column name="id" type="${number}" autoIncrement="true">
<constraints primaryKey="true" nullable="false" primaryKeyName="PK_CPE_DELETED_LOG"/>
</column>
<column name="cpe_id" type="${number}">
<constraints nullable="false"/>
</column>
<column name="serial" type="varchar(64)">
<constraints nullable="false"/>
</column>
<column name="isp_id" type="${number}"/>
<column name="manufacturer" type="varchar(64)"/>
<column name="model" type="varchar(64)"/>
<column name="creator" type="varchar(64)"/>
<column name="last_connection" type="${date}"/>
<column name="registered" type="${date}"/>
<column name="created" type="${date}">
<constraints nullable="false"/>
</column>
</createTable>
<createIndex tableName="cpe_deleted_log" schemaName="ftacs"
indexName="cpe_deleted_log_manuf_idx" unique="false">
<column name="manufacturer"/>
</createIndex>
<createIndex tableName="cpe_deleted_log" schemaName="ftacs"
indexName="cpe_deleted_log_model_idx" unique="false">
<column name="model"/>
</createIndex>
<createIndex tableName="cpe_deleted_log" schemaName="ftacs"
indexName="cpe_deleted_log_serial_idx" unique="false">
<column name="serial"/>
</createIndex>
<createIndex tableName="cpe_deleted_log" schemaName="ftacs"
indexName="cpe_deleted_log_created_idx" unique="false">
<column name="created"/>
</createIndex>
</changeSet>
<changeSet id="v6.4.11.35433-2" author="vadim" dbms="oracle">
<createSequence
incrementBy="1"
sequenceName="CPE_DELETED_LOG_0"
startValue="1"
schemaName="ftacs"/>
</changeSet>
3. Web Service (WS) Changes
Method Affected: deleteCPE
Changes:
-
A new optional field
creatoris added to the deleteCPE request payload. -
This value is stored in the
creatorfield ofcpe_deleted_log. -
Caller modules (UI/API/etc.) must now supply the creator value when invoking deleteCPE.
4. Backend Implementation
5. WS Callers (UI/API/DelDev/etc.)
All callers of the deleteCPE method must:
-
Include the new
creatorfield in the request payload. -
Set appropriate values like Admin, API, Auto-delete, ACS, etc., based on the deletion context.
6. Reporting Requirements
-
New UI report section: CPEAdmin → Reports → Deleted devices
-
Report fields include: Serial number, Manufacturer, Model, Registration date, Last connection, Deleted, Deleted By.
-
Export support: HTML.
-
Re-registered devices are excluded from this report.
-
List of deleted devices present with descending sorting by "Deleted" column by default. No manual sorting available.
-
"Deleted by" value being taken from "ApplicationShortName" GUI setting. For APIs it is hardcoded as "API" value.