package com.qqchen.deploy.backend.workflow.dto.outputs;

import com.qqchen.deploy.backend.workflow.dto.CommitDifferenceInfo;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.List;

/**
 * Git同步检测节点输出
 *
 * @author qqchen
 * @since 2025-12-04
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class GitSyncCheckOutputs extends BaseNodeOutputs {
    
    /**
     * 是否存在差异
     */
    private Boolean hasDifference;
    
    /**
     * 源分支领先的提交数
     */
    private Integer commitsAhead;
    
    /**
     * 目标分支领先的提交数
     */
    private Integer commitsBehind;
    
    /**
     * 差异提交列表（最多显示20条）
     */
    private List<CommitDifferenceInfo> differenceCommits;
    
    /**
     * 源分支最新提交SHA
     */
    private String sourceLatestCommit;
    
    /**
     * 目标分支最新提交SHA
     */
    private String targetLatestCommit;
    
    /**
     * 检查结果详情（用于通知模板）
     */
    private String checkDetail;
}
