// 在 stage-delivery.component.ts 的 line 518 后添加以下方法：

  /**
   * 统一旧数据的 currentStage 为"交付执行"
   */
  async unifyDeliveryStageForOldData(): Promise<void> {
    if (!this.project) return;
    
    const currentStage = this.project.get('currentStage');
    const validDeliveryStages = ['白模', '软装', '渲染', '后期'];
    
    if (validDeliveryStages.includes(currentStage)) {
      console.log(`🔥 [统一阶段] 检测到旧数据 currentStage="${currentStage}"，统一为"交付执行"`);
      
      const data = this.project.get('data') || {};
      data.deliverySubStage = currentStage;
      
      this.project.set('currentStage', '交付执行');
      this.project.set('data', data);
      
      try {
        await this.project.save();
        console.log(`✅ [统一阶段] currentStage 已统一为"交付执行"，子阶段保存到 deliverySubStage`);
      } catch (e) {
        console.error('❌ [统一阶段] 更新失败:', e);
      }
    } else if (currentStage === '交付执行') {
      const data = this.project.get('data') || {};
      if (!data.deliverySubStage) {
        const deliveryStageStatus = data.deliveryStageStatus || {};
        const stageOrder = ['white_model', 'soft_decor', 'rendering', 'post_process'];
        const stageNameMap: Record<string, string> = {
          'white_model': '白模',
          'soft_decor': '软装',
          'rendering': '渲染',
          'post_process': '后期'
        };
        
        let targetSubStage = '白模';
        for (const stageId of stageOrder) {
          const stageKey = stageId.replace('_', '');
          const status = deliveryStageStatus[stageKey]?.status;
          if (status !== 'approved') {
            targetSubStage = stageNameMap[stageId];
            break;
          }
        }
        
        data.deliverySubStage = targetSubStage;
        this.project.set('data', data);
        
        try {
          await this.project.save();
          console.log(`✅ [统一阶段] deliverySubStage 初始化为: ${targetSubStage}`);
        } catch (e) {
          console.error('❌ [统一阶段] deliverySubStage 初始化失败:', e);
        }
      }
    }
  }
