package com.zcloud.personnel.positioning.dto;

import com.alibaba.cola.dto.Command;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.time.LocalDateTime;

/**
 * web-client
 *
 * @Author fangjiakai
 * @Date 2026-07-07
 */
@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@AllArgsConstructor
public class SyncTaskAddCmd extends Command {
    @ApiModelProperty(value = "任务编码", name = "taskCode")
    private String taskCode;

    @ApiModelProperty(value = "任务名称", name = "taskName")
    private String taskName;

    @ApiModelProperty(value = "业务类型 ORG/STAFF/TERMINAL/FENCE/ALARM_RULE/ALARM/CALLBACK", name = "bizType")
    private String bizType;

    @ApiModelProperty(value = "企业id/公司id（公司及子公司数据隔离）", name = "corpinfoId")
    private String corpinfoId;

    @ApiModelProperty(value = "企业名称/公司名称", name = "corpinfoName")
    private String corpinfoName;

    @ApiModelProperty(value = "同步方向 PUSH推送 PULL拉取", name = "syncDirection")
    private String syncDirection;

    @ApiModelProperty(value = "定时表达式", name = "cronExpr")
    private String cronExpr;

    @ApiModelProperty(value = "是否启用", name = "enabled")
    private Integer enabled;

    @ApiModelProperty(value = "上次执行时间", name = "lastExecuteTime")
    private LocalDateTime lastExecuteTime;

    @ApiModelProperty(value = "下次执行时间", name = "nextExecuteTime")
    private LocalDateTime nextExecuteTime;

    @ApiModelProperty(value = "上次执行状态", name = "lastStatus")
    private String lastStatus;

    @ApiModelProperty(value = "上次执行信息", name = "lastMessage")
    private String lastMessage;
}
