# Class ArchiveNurseDataJob

Namespace
  adas_core.Application.Services

Assembly
  adas-core.Application.dll

Represents a scheduled job that archives nurse data, preventing concurrent executions of the same job instance.

    [DisallowConcurrentExecution]
    public class ArchiveNurseDataJob : IJob

Inheritance
  object
  ArchiveNurseDataJob

Implements
  IJob

Inherited Members
  object.Equals(object)
  object.Equals(object, object)
  object.GetHashCode()
  object.GetType()
  object.MemberwiseClone()
  object.ReferenceEquals(object, object)
  object.ToString()

Extension Methods
  NumberUtils.IsNumber(object)
  NumberUtils.ToDouble(object)
  ObjectUtils.ToStr(object?)

## Remarks

The Quartz.DisallowConcurrentExecutionAttribute attribute ensures that the job will not be triggered while a previous execution is still running.

## Properties

### ArchiveNurseDataSettings

    public static ArchiveNurseData ArchiveNurseDataSettings { get; set; }

#### Property Value

ArchiveNurseData

### PatientCarePlanService

    public static IPatientCarePlanService PatientCarePlanService { get; set; }

#### Property Value

IPatientCarePlanService

### PatientService

    public static IPatientService PatientService { get; set; }

#### Property Value

IPatientService

## Methods

### Execute(IJobExecutionContext)

Executes the ArchiveNurseDataJob which archives finished nurse procedures, tests, and treatments for patients whose associated end dates exceed the configured thresholds defined in ArchiveNurseDataSettings. Each archive category is only processed when its corresponding setting flag is active, and any exception is caught and logged without interrupting the remaining work.

    public Task Execute(IJobExecutionContext context)

#### Parameters

`context` IJobExecutionContext

  The Quartz.NET job execution context that provides runtime information for the scheduled job execution.

#### Returns

Task