// 任务分配相关数据类型定义

export interface Task {
  id: string;
  name: string;
  description?: string;
  
  // 任务类型和优先级
  taskType: TaskType;
  priority: TaskPriority;
  
  // 地块信息
  fieldId?: string;
  fieldName?: string;
  fieldArea?: number; // 亩
  
  // 分配信息
  machineryId: string | null;
  machineryName?: string;
  driverId: string | null;
  driverName?: string;
  
  // 时间信息
  startTime: string;
  endTime: string;
  estimatedDuration?: number; // 小时
  
  // 作业要求
  requirements?: {
    workingDepth?: number; // 作业深度(cm)
    workingSpeed?: number; // 作业速度(km/h)
    seedingRate?: number; // 播种量(kg/亩)
    fertilizingRate?: number; // 施肥量(kg/亩)
    quality?: string; // 质量要求
  };
  
  // 状态
  status: TaskStatus;
  
  // 备注
  remarks?: string;
  
  // 创建和更新信息
  createdAt: string;
  updatedAt: string;
  createdBy: string;
  updatedBy?: string;
}

export type TaskType = 
  | '耕地'
  | '播种'
  | '施肥'
  | '灌溉'
  | '喷药'
  | '收获'
  | '运输'
  | '其他';

export type TaskPriority = 'low' | 'medium' | 'high' | 'urgent';

export type TaskStatus = 
  | '待分配'
  | '已分配'
  | '进行中'
  | '已完成'
  | '已取消';

// 地块信息
export interface Field {
  id: string;
  name: string;
  area: number; // 亩
  location?: string;
  cropType?: string;
  status: 'idle' | 'working' | 'harvested';
}
