{
  "name": "hrm",
  "version": "1.0.0",
  "displayName": "مدیریت منابع انسانی",
  "displayName_en": "Human Resource Management",
  "description": "سیستم جامع مدیریت منابع انسانی شامل ساختار سازمانی، پرسنل، حقوق و دستمزد، حضور و غیاب و مرخصی",

  "dependencies": {
    "platform": ">=1.0.0",
    "modules": []
  },

  "provides": {
    "events": [
      "hrm.legal_entity.created",
      "hrm.legal_entity.updated",
      "hrm.location.created",
      "hrm.location.updated",
      "hrm.employee.hired",
      "hrm.employee.updated",
      "hrm.employee.terminated",
      "hrm.employee.transferred",
      "hrm.assignment.created",
      "hrm.assignment.ended",
      "hrm.position.created",
      "hrm.position.vacated",
      "hrm.position.filled",
      "hrm.job.created",
      "hrm.job.updated",
      "hrm.timesheet.submitted",
      "hrm.timesheet.approved",
      "hrm.attendance.recorded",
      "hrm.leave.requested",
      "hrm.leave.approved",
      "hrm.leave.rejected",
      "hrm.leave.cancelled",
      "hrm.payroll.salary_changed",
      "hrm.payroll.cost_allocated"
    ],
    "commands": [
      "hire_employee",
      "terminate_employee",
      "transfer_employee",
      "create_position",
      "fill_position",
      "submit_timesheet",
      "approve_timesheet",
      "request_leave",
      "approve_leave",
      "set_salary"
    ],
    "queries": [
      "get_employee",
      "get_employee_by_org_unit",
      "get_position",
      "get_open_positions",
      "get_attendance",
      "get_leave_balance",
      "get_labor_cost",
      "get_resource_availability"
    ]
  },

  "consumes": {
    "events": [
      "platform.user.created",
      "platform.tenant.activated",
      "platform.org_unit.created",
      "platform.org_unit.updated"
    ],
    "queries": [
      "get_org_unit",
      "get_user"
    ]
  },

  "ui": {
    "type": "hybrid",
    "navigation": true,
    "standalone_frontend": false
  },

  "api": {
    "prefix": "/api/v1/hrm",
    "versions": ["v1"]
  },

  "database": {
    "prefix": "hrm_",
    "isolated": true
  },

  "microservice_ready": true,
  "extract_priority": "high",

  "submodules": [
    "organization_structure",
    "employee_master_data",
    "position_job",
    "time_attendance",
    "leave_management",
    "payroll_foundation"
  ]
}
