using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace CallCenterApi.Model
{
    /// <summary>
    /// 计划表
    /// </summary>
    [Serializable]
    public partial class T_CTI_Task
    {
        public T_CTI_Task()
        { }
        #region Model
        /// <summary>
        /// Id
        /// </summary>
        public long TaskID { get; set; }
        /// <summary>
        /// 分类
        /// </summary>
        public int TaskCategoryId { get; set; }
        /// <summary>
        /// 名称
        /// </summary>
        public string TaskName { get; set; }
        /// <summary>
        /// 任务内容
        /// </summary>
        public string TaskContent { get; set; }
        /// <summary>
        /// 是否立即执行，默认false。  立即执行=true; 定时执行=false;
        /// </summary>
        public bool? IsExcuteNow { get; set; }
        /// <summary>
        /// 失败重复次数
        /// </summary>
        public int LoopTime { get; set; }
        /// <summary>
        /// -1.删除
        /// 0.待执行
        /// 1.处理中
        /// 2.暂停
        /// 3.处理完成（添加时状态为暂停2，启动任务后状态为0待CTI执行，CTI开始执行这一项的时候状态为1，子项呼叫完后状态改为3））
        /// </summary>
        public int? State { get; set; }
        public DateTime? AddTime { get; set; }
        /// <summary>
        /// 号码总量
        /// </summary>
        public int? y_HMCount { get; set; } = 0;
        /// <summary>
        /// 已接
        /// </summary>
        public int? y_YJCount { get; set; } = 0;
        /// <summary>
        /// 线路前缀
        /// </summary>
        public string Pre { get; set; }
        /// <summary>
        /// 0=并发数; 1=进号速率 
        /// </summary>
        public int ConcurrencyType { get; set; }
        /// <summary>
        /// 并发数/进号速率
        /// </summary>
        public float Concurrency { get; set; }
        /// <summary>
        /// 任务发送时间
        /// </summary>
        public DateTime PlanStartDate { get; set; }
        /// <summary>
        /// 任务结束时间
        /// </summary>
        public DateTime PlanEndDate { get; set; }
        /// <summary>
        /// 生效开始时间段1
        /// </summary>
        public DateTime StartTime1 { get; set; }
        /// <summary>
        /// 生效结束时间段2
        /// </summary>
        public DateTime EndTime1 { get; set; }
        /// <summary>
        /// 生效开始时间段2
        /// </summary>
        public DateTime StartTime2 { get; set; }
        /// <summary>
        /// 生效结束时间段2
        /// </summary>
        public DateTime EndTime2 { get; set; }

        #endregion Model

    }

    /// <summary>
    /// 前台绑定，勿改
    /// </summary>
    public enum EnumTaskState
    {
        删除 = -1,
        待执行 = 0,
        处理中 = 1,
        暂停 = 2,
        处理完成 = 3

    }
}

