Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
A AIS modular
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Metrics
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Matthew Chavez
  • AIS modular
  • Wiki
    • Clearance
  • Technical Debt

Technical Debt · Changes

Page history
Multiple Updates: authored Jun 17, 2021 by Matthew Chavez's avatar Matthew Chavez
* Fixed Clearance skeletal layout
* Added proper references to the clearance wiki
* Added WDT Skeletal layout
Hide whitespace changes
Inline Side-by-side
Showing with 1 addition and 1 deletion
+1 -1
  • clearance/Technical-Debt.md clearance/Technical-Debt.md +1 -1
  • No files found.
clearance/Technical-Debt.md 0 → 100644
View page @ 4ee478ab
## Clearance Technical Debts
There are many causes that the technical debts have accumulated especially in clearance module.
* Required to implement the module as soon as possible (due to pandemic).
* Some specific AMTI departments have specific way of dealing with clearance routed to them.
* Some specific AMTI Approvers have specific timeline to process the clearance.
* Routes are dynamic and varies to employee application.
* Unforeseen specification that was eventually needed and was not advised early on regarding such scenario.
* **I'm partly to blame as I haven't expected such features to be requested.**
However, this is not a wiki to discuss the reasons why I have technical debts.
----------
## Tech Debt 1: Approver and Route Management
Managing route and approvers is identical as it relies heavily on the [AIS Hierarchy Module](https://ais.amti.com.ph/hierarchy). This can be solved in a single module page only by filtering the clearance **Form Types** only `- AFC` and `- ONSITE`.
But I have planned to separate this inside a single web page but have two (2) tab page to separate the data tables per form allowing us also to have separate **Add**, **Edit** and **Archive**.
Changing the forms
Ongoing Solution for solving this: **Route Management**
<!-- ## ⚠️ ONGOING DEVELOPMENT OF WIKI ⚠️ -->
----------
## Tech Debt 2: Sales Logistics Special conditions
This is a requirement that was only brought up after the day the clearance has been implemented. The approvers of the **Sales Logistics Department** *(Part of the standard route)* should be dynamic according to employee department.
Sales Logistic Department has many BU/Teams under its wing, and those BU or Business Units are managed by two (2) AMTI Employees.
*"In my current tenure, the Sales Logistics Approver is **Ma'am Donna Perez** have two AMTI employee's under her. **Ma'am Lorry** and **Ma'am Jaymee**. This is an unhandled on the initial implementation of the clearance module. However a work around was made to comply their requirements. - matt"*
``` php
# The following code is at:
# FILE: clearance.php
# CLASS: Clearance
# FUNCTION: addClearance()
case 'AFC':
$clearanceId = $this->clearance_model->insertClearance($clearance); // insert clearance
// ======= SPECIAL SCENARIO FOR SALES LOGISTICS UNDER MA'AM DONNA. =======
$msJaymee = ['D0066', 'D0053', 'D0040', 'D0004', 'D0005', 'D0072', 'D0007', 'D0008', 'D0009', 'D0044'];
$msLorry = ['D0010', 'D0022', 'D0027', 'D0028', 'D0029', 'D0030', 'D0012', 'D0023', 'D0024', 'D0025', 'D0026', 'D0032'];
$salesSubApprover = null;
// if employee is under ms.Jaymee. Remove (51 = Miss Lorry)
if (in_array($clearance['dept_ID'], $msJaymee)) $salesSubApprover = '51';
// if employee is under ms.Lorry. Remove (21 = miss jaymee)
else if (in_array($clearance['dept_ID'], $msLorry)) $salesSubApprover = '21';
$clearanceRoutes = $this->clearance_model->routesAFC($clearance['supervisor_id'], $salesSubApprover);
echo json_encode(['code' => '0', 'msg' => 'success']);
$isClearanceInserted = true;
// ===================== SPECIAL SCENARIO ENDS HERE =======================
break;
```
| Approver/User ID | Approver | Dept ID | Department |
| ---------------- | ------------ | ------- | --------------------------------- |
| 21 | Ma'am Jaymee | D0004 | AMTI - CEBU |
| 21 | Ma'am Jaymee | D0005 | AMTI - DAVAO |
| 21 | Ma'am Jaymee | D0007 | ASCEND MANAGEMENT |
| 21 | Ma'am Jaymee | D0008 | ASCEND-BPO FACILITIES & SOLUTIONS |
| 21 | Ma'am Jaymee | D0009 | ASCEND-CYBERSECURITY |
| 21 | Ma'am Jaymee | D0040 | GOVERNMENT TEAM |
| 21 | Ma'am Jaymee | D0044 | IMS - SALES GROUP |
| 21 | Ma'am Jaymee | D0053 | PROFESSIONAL SERVICES GROUP(PSG) |
| 21 | Ma'am Jaymee | D0066 | UNCS NETWORK/SECURITY |
| 21 | Ma'am Jaymee | D0072 | AMARANTOS |
| 51 | Ma'am Lorry | D0010 | AVIT |
| 51 | Ma'am Lorry | D0012 | BFSI |
| 51 | Ma'am Lorry | D0022 | EBU 1 |
| 51 | Ma'am Lorry | D0023 | EBU 11(ESG2) |
| 51 | Ma'am Lorry | D0024 | EBU 12(ESG2) |
| 51 | Ma'am Lorry | D0025 | EBU 14(ESG2) |
| 51 | Ma'am Lorry | D0026 | EBU 15(ESG2) |
| 51 | Ma'am Lorry | D0027 | EBU 2 |
| 51 | Ma'am Lorry | D0028 | EBU 3 |
| 51 | Ma'am Lorry | D0029 | EBU 5 |
| 51 | Ma'am Lorry | D0030 | EBU 6 |
| 51 | Ma'am Lorry | D0032 | EBU 9 / CONSUMABLES & PERIPHER |
> Prospect solution: This could be solved in a single table inside the clearance database to be a managed data. But this must be in synced with the current sub-approvers of Sales logistics. Else this could pose an error to the function.
-------
## Tech Debt 3: Clearance Routes is inserted on clearance submit application .
This is an old tech debt that I am fully aware of since the day of implementation but unable to publish the updates due to the requirements being requested occasionally outdating the pending updates further more.
\ No newline at end of file
Clone repository
  • Hubstaff
    • Common Support and Issues
    • Overview
  • Warehouse Delivery Tracking (WDT API Only)
    • Common Support and Issues
    • Overview
    • Technical Debt
  • clearance
    • Common Support and Issues
    • Overview
    • Technical Debt
  • Home