Resource, Vendor & Candidate Management
Business perspective: Resource, Vendor & Candidate Management
1. Business Summary
Maintains internal employees, freelancers, agencies, candidates, plus their capabilities (languages, subject matters), education, employment history, references, banks, e-cash, deductions, and statuses.
2. Business Value
Talent pool that powers all delivery; quality and pricing depend on accurate profiles.
3. Users / Stakeholders
Vendor managers, HR, recruitment, PMs, finance, vendors themselves.
4. Workflows
A. Resource creation
- Manual or via Cognito ingest, Welocalize/Junction onboarding.
- Linked to Contact, Department, Brand, JobTitle, ResourceType, EmployeeType, ResourceSource.
B. Candidate flow
- Candidate created → CandidateAssessment → CandidateEvaluation → optionally CandidateTrainingPlan (Moodle integration).
- On approval, converted to Resource.
C. Capability/price management
- ResourceLanguages, ResourcePriceDetails (per language/task/unit/currency).
- ResourcesEvaluations link to language pair, task type, specification, subject matter scoring.
D. Banking/payment setup
- ResourcesBank (bank transfer), ResourcesEcash (e-wallet), ResourcesDeductionTypes (taxes/withholding).
- VendorPayment uses one of these methods.
E. Status lifecycle
- ResourceStatus: active / inactive / suspended.
- CandidateStatus: prospective / qualified / active / inactive.
5. Sub-Features
- Education / Employer / References history.
- Resource Projects / Project Types capabilities.
- ResourceMoreInfoTypes, ResourceOthers, ResourcesOtherTools.
- Trainings / Certificates (Moodle).
6. Business Rules
- Resource needs ≥ 1 valid payment method before assignment (implicit; finance flow checks).
- Bank country + currency must match resource currency.
- Active status required for assignment.
- Deductions auto-applied at vendor payment time.
7. Data Entities
Resource, Vendors (subclass), Candidate, CandidateAssessment, CandidateEvaluation, CandidateTrainingPlan, ResourceLanguages, ResourceEducation, ResourceEmployers, ResourceReferences, ResourceProjects, ResourceProjectTypes, ResourcePriceDetail, ResourcesBank, ResourcesEcash, ResourcesDeductionType, ResourceSource, ResourceType, EmployeeType, VendorType, ResourceStatus.
8. Entry Points
resources/resources,resources/candidates,resources/resourcePriceDetails,resources/resourcesBanks,resources/resourcesEcashes, etc.cognito/baseingest.
9. Inputs & Outputs
- Inputs: profile data, capability records, bank/e-cash details, certificates.
- Outputs: approved resource records, candidate-to-resource conversion, pricing, payment methods.
10. Integrations
- Cognito Forms (recruitment).
- Moodle (training/certification).
- ownCloud (file storage for CVs/certificates).
11. Calculations / Logic
- Pricing rates feed into Vendor Invoice computation.
- Evaluation score weighted aggregation drives selection ranking.
12. Status Lifecycle
- ResourceStatus / CandidateStatus / ResourceProjectTypes.
13. Permissions
- VM, HR, Finance, brand-scoped.
14. Reports & KPIs
- Talent pool coverage by language pair, average rating, utilization.
15. Risks & Observations
- Sensitive data (banking, taxes) — broad access risk.
- Conversion logic from Candidate → Resource not visible in models (likely component) — risk of duplicate records.
- Validation light at model layer; relies on controller.
16. Source Code Evidence
app/Plugin/resources/Model/{Resource, Candidate, CandidateAssessment, CandidateEvaluation, CandidateTrainingPlan, ResourcePriceDetail, ResourcesBank, ResourcesEcash, ResourcesDeductionType, ResourceEmployer, ResourceEducation, ResourceRefrence, ResourceProject}.php.app/Plugin/resources/Controller/ResourcesController.php,CandidatesController.php,ResourceEducationsController.php, etc.app/Controller/CognitoController.php.