Developer 02 f2e718565d Add EmailOut components: entity, DTO, repository, and services
- Introduced EmailOut and EmailOutDto for data management.
- Added EmailOutRepository and service interfaces based on CRUD patterns.
2024-04-16 16:25:55 +02:00

89 lines
2.3 KiB
C#

using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace EnvelopeGenerator.Domain.Entities
{
[Table("TBEMLP_EMAIL_OUT", Schema = "dbo")]
public class EmailOut
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column("GUID")]
public int Id { get; set; }
[Required]
[Column("REMINDER_TYPE_ID")]
public int ReminderTypeId { get; set; } = 1; // Default value
[Required]
[Column("SENDING_PROFILE")]
public int SendingProfile { get; set; }
[Required]
[Column("REFERENCE_ID")]
public int ReferenceId { get; set; }
[StringLength(200)]
[Column("REFERENCE_STRING")]
public string ReferenceString { get; set; }
[Column("ENTITY_ID")]
public int? EntityId { get; set; }
[Required]
[Column("WF_ID")]
public int WfId { get; set; }
[StringLength(200)]
[Column("WF_REFERENCE")]
public string WfReference { get; set; }
[Required]
[StringLength(1000)]
[Column("EMAIL_ADRESS")]
public string EmailAdress { get; set; }
[Required]
[StringLength(500)]
[Column("EMAIL_SUBJ")]
public string EmailSubj { get; set; }
[Required]
[Column("EMAIL_BODY")]
public string EmailBody { get; set; }
[StringLength(512)]
[Column("EMAIL_ATTMT1")]
public string EmailAttmt1 { get; set; }
[Column("EMAIL_SENT")]
public DateTime? EmailSent { get; set; }
[StringLength(500)]
[Column("COMMENT")]
public string Comment { get; set; }
[Required]
[StringLength(50)]
[Column("ADDED_WHO")]
public string AddedWho { get; set; } = "DEFAULT"; // Default value
[Column("ADDED_WHEN")]
public DateTime? AddedWhen { get; set; } = DateTime.Now; // Default value
[StringLength(50)]
[Column("CHANGED_WHO")]
public string ChangedWho { get; set; }
[Column("CHANGED_WHEN")]
public DateTime? ChangedWhen { get; set; }
[Column("ERROR_TIMESTAMP")]
public DateTime? ErrorTimestamp { get; set; }
[StringLength(900)]
[Column("ERROR_MSG")]
public string ErrorMsg { get; set; }
}
}