using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;

namespace IWS5.DatabaseAccess.IwsDataModels;

[Table("ATWorkItemReferenceArc")]
public partial class AtworkItemReferenceArc
{
    [Key]
    public int WorkItemReferenceId { get; set; }

    public int WorkItemId { get; set; }

    [StringLength(32)]
    public string? Queue { get; set; }

    [StringLength(255)]
    public string? SourceUser { get; set; }

    [StringLength(32)]
    public string? SourceQueue { get; set; }

    [Column(TypeName = "datetime")]
    public DateTime? ArrivalDate { get; set; }

    [Column("EventID")]
    public int? EventId { get; set; }

    [Column(TypeName = "datetime")]
    public DateTime? ExpirationTime { get; set; }

    public int Expired { get; set; }

    public int? Successor { get; set; }

    public int? ServerRequest { get; set; }

    public int? ServerRequestParam { get; set; }

    public int Status { get; set; }

    [StringLength(255)]
    public string? AssignedTo { get; set; }

    [StringLength(255)]
    public string? LastAction { get; set; }

    public int? PendEventId { get; set; }

    [StringLength(32)]
    public string? PendQueue { get; set; }

    public int? Draft { get; set; }

    public int? Priority { get; set; }

    [Column(TypeName = "datetime")]
    public DateTime? PendExpirationTime { get; set; }

    [Column(TypeName = "text")]
    public string? DocumentBlob { get; set; }

    [StringLength(255)]
    public string? ArchiveSource { get; set; }

    [Column(TypeName = "datetime")]
    public DateTime? LastActionDate { get; set; }

    [Column(TypeName = "datetime")]
    public DateTime? LastViewDate { get; set; }
}
