public static async Task LoadGroupsAsync(UnitOfWork unitOfWork) { GroupEntityFactory factory = new GroupEntityFactory(); foreach (GroupModel group in await unitOfWork.GroupRepository.GetAll()) { GroupEntity groupEntity = factory.Create(group); foreach (WarehouseModel warehouse in await unitOfWork.WarehouseRepository.GetAll()) { if (groupEntity.DbModel.Id == warehouse.GroupId) { WarehouseEntity warehouseEntity = new WarehouseEntity(groupEntity, warehouse); warehouseEntity.Spawn(); } } } }
public static GroupEntity Create(string name, string tag, GroupType type) { GroupModel groupModel = new GroupModel() { Workers = new List <GroupWorkerModel>(), Name = name, Tag = tag, GroupType = type, }; RoleplayContext context = Singleton.GetDatabaseInstance(); using (UnitOfWork unitOfWork = new UnitOfWork(context)) { unitOfWork.GroupRepository.Add(groupModel); } GroupEntityFactory entityFactory = new GroupEntityFactory(); return(entityFactory.Create(groupModel)); }