Added update methods to models

This commit is contained in:
quentin 2024-04-24 16:04:15 -05:00
parent 27846f596e
commit 03a72c365d
9 changed files with 60 additions and 9 deletions

View File

@ -9,7 +9,7 @@ namespace API.Services
{
public class ServiceBase<TLoggerCategory, TDTO, TModel, TAudit, TAuthentication> : IGenericService<TDTO, TModel, TAudit>
where TAuthentication : IGenericAuthentication<TDTO, TModel>
where TModel : Model<TAudit>
where TModel : Model<TModel, TAudit>
where TAudit : class
where TDTO : IAdaptable<TModel>
{
@ -77,6 +77,8 @@ namespace API.Services
copyToAudit(origModel);
model.updateModel(ref origModel);
origModel.updated = DateTime.Now;
origModel.updater = user.id;

View File

@ -7,7 +7,7 @@ namespace DAL.Models
{
[Table("colors")]
[Index("updater", Name = "colors_users_id_fk")]
public class Color : Model<AuditColor>
public class Color : Model<Color, AuditColor>
{
[Column("red")]
public byte red { get; set; }
@ -35,5 +35,12 @@ namespace DAL.Models
updater = updater
};
}
public override void updateModel(ref Color dest)
{
dest.red = red;
dest.blue = blue;
dest.green = green;
dest.name = name;
}
}
}

View File

@ -11,7 +11,7 @@ namespace DAL.Models
[Index("fgColorId", Name = "events_colors_id_fk_2")]
[Index("imageId", Name = "events_images_id_fk")]
[Index("savedEventId", Name = "events_savedEvents_id_fk")]
public class Event : Model<AuditEvent>
public class Event : Model<Event, AuditEvent>
{
[Column("savedEventId")]
public ulong savedEventId { get; set; }
@ -52,5 +52,14 @@ namespace DAL.Models
updater = updater
};
}
public override void updateModel(ref Event dest)
{
dest.savedEventId = savedEventId;
dest.name = name;
dest.bgColorId = bgColorId;
dest.fgColorId = fgColorId;
dest.imageId = imageId;
dest.hidden = hidden;
}
}
}

View File

@ -9,7 +9,7 @@ namespace DAL.Models
[Index("updater", Name = "grants_users_id_fk")]
[Index("permissionId", Name = "grants_permissions_id_fk")]
[Index("updater", Name = "grants_users_id_fk")]
public class Grant : Model<AuditGrant>
public class Grant : Model<Grant, AuditGrant>
{
[Column("name")]
[MaxLength(128)]
@ -31,5 +31,10 @@ namespace DAL.Models
updater = updater
};
}
public override void updateModel(ref Grant dest)
{
dest.name = name;
dest.permissionId = permissionId;
}
}
}

View File

@ -7,7 +7,7 @@ namespace DAL.Models
{
[Table("images")]
[Index("updater", Name = "images_users_id_fk")]
public class Image : Model<AuditImage>
public class Image : Model<Image, AuditImage>
{
[Column("name")]
[MaxLength(64)]
@ -29,5 +29,10 @@ namespace DAL.Models
updater = updater
};
}
public override void updateModel(ref Image dest)
{
dest.name = name;
dest.filename = filename;
}
}
}

View File

@ -3,7 +3,7 @@ using System.ComponentModel.DataAnnotations.Schema;
namespace DAL.Models
{
public abstract class Model<TAudit>
public abstract class Model<TBase, TAudit>
{
[Key]
[Column("id")]
@ -21,5 +21,7 @@ namespace DAL.Models
public ICollection<TAudit> audits { get; set; } = new List<TAudit>();
public abstract TAudit adaptToAudit();
public abstract void updateModel(ref TBase dest);
}
}

View File

@ -7,7 +7,7 @@ namespace DAL.Models
{
[Table("permissions")]
[Index("updater", Name = "permissions_users_id_fk")]
public class Permission : Model<AuditPermission>
public class Permission : Model<Permission, AuditPermission>
{
[Column("name")]
[MaxLength(64)]
@ -24,5 +24,9 @@ namespace DAL.Models
updater = updater
};
}
public override void updateModel(ref Permission dest)
{
dest.name = name;
}
}
}

View File

@ -10,7 +10,7 @@ namespace DAL.Models
[Index("fgColorId", Name = "savedEvents_colors_id_fk")]
[Index("bgColorId", Name = "savedEvents_colors_id_fk_2")]
[Index("imageId", Name = "savedEvents_images_id_fk")]
public class SavedEvent : Model<AuditSavedEvent>
public class SavedEvent : Model<SavedEvent, AuditSavedEvent>
{
[Column("name")]
[MaxLength(64)]
@ -42,5 +42,12 @@ namespace DAL.Models
updater = updater
};
}
public override void updateModel(ref SavedEvent dest)
{
dest.name = name;
dest.bgColorId = bgColorId;
dest.fgColorId = fgColorId;
dest.imageId = imageId;
}
}
}

View File

@ -15,7 +15,7 @@ namespace DAL.Models
[Table("users")]
[Index("updater", Name = "users_users_id_fk")]
[Index("permissionId", Name = "users_permissions_id_fk")]
public class User : Model<AuditUser>
public class User : Model<User, AuditUser>
{
[Column("firstName")]
[MaxLength(64)]
@ -56,5 +56,15 @@ namespace DAL.Models
permissionId = permissionId
};
}
public override void updateModel(ref User dest)
{
dest.firstName = firstName;
dest.lastName = lastName;
dest.phoneNumber = phoneNumber;
dest.password = password;
dest.salt = salt;
dest.hashingType = hashingType;
dest.permissionId = permissionId;
}
}
}