If this is a brand new entity and not a subclass of an existing entity (looks like it is) then you need to create a new AdminSection for it so that it will show up in the navigation sidebar on the left. One of the properties in AdminSection is the fully qualified classname which you want to set to your entity.
And yes, you will have to have permissions in BLC_ADMIN_PERMISSIONS for your new entity. This is an example of permissions for the CRUD operations on Category:
Code: Select all
INSERT INTO BLC_ADMIN_PERMISSION (ADMIN_PERMISSION_ID, DESCRIPTION, NAME, PERMISSION_TYPE) VALUES (-2,'Create Category','PERMISSION_CREATE_CATEGORY', 'CREATE');
INSERT INTO BLC_ADMIN_PERMISSION (ADMIN_PERMISSION_ID, DESCRIPTION, NAME, PERMISSION_TYPE) VALUES (-3,'Update Category','PERMISSION_UPDATE_CATEGORY', 'UPDATE');
INSERT INTO BLC_ADMIN_PERMISSION (ADMIN_PERMISSION_ID, DESCRIPTION, NAME, PERMISSION_TYPE) VALUES (-4,'Delete Category','PERMISSION_DELETE_CATEGORY', 'DELETE');
INSERT INTO BLC_ADMIN_PERMISSION (ADMIN_PERMISSION_ID, DESCRIPTION, NAME, PERMISSION_TYPE) VALUES (-5,'Read Category','PERMISSION_READ_CATEGORY', 'READ');
INSERT INTO BLC_ADMIN_PERMISSION (ADMIN_PERMISSION_ID, DESCRIPTION, NAME, PERMISSION_TYPE) VALUES (-6,'All Category','PERMISSION_ALL_CATEGORY', 'ALL');
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-1, 'org.broadleafcommerce.core.catalog.domain.Category', -2);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-2, 'org.broadleafcommerce.core.catalog.domain.Category', -3);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-4, 'org.broadleafcommerce.core.catalog.domain.Category', -4);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-6, 'org.broadleafcommerce.core.catalog.domain.Category', -5);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-7, 'org.broadleafcommerce.core.catalog.domain.Category', -6);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-8, 'org.broadleafcommerce.core.catalog.domain.CategoryAttribute', -2);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-9, 'org.broadleafcommerce.core.catalog.domain.CategoryAttribute', -3);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-10, 'org.broadleafcommerce.core.catalog.domain.CategoryAttribute', -4);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-11, 'org.broadleafcommerce.core.catalog.domain.CategoryAttribute', -5);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-12, 'org.broadleafcommerce.core.catalog.domain.CategoryAttribute', -6);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-13, 'org.broadleafcommerce.core.catalog.domain.CategoryProductXrefImpl', -2);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-14, 'org.broadleafcommerce.core.catalog.domain.CategoryProductXrefImpl', -3);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-15, 'org.broadleafcommerce.core.catalog.domain.CategoryProductXrefImpl', -4);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-16, 'org.broadleafcommerce.core.catalog.domain.CategoryProductXrefImpl', -5);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-17, 'org.broadleafcommerce.core.catalog.domain.CategoryProductXrefImpl', -6);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-18, 'org.broadleafcommerce.core.catalog.domain.CategoryXrefImpl', -2);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-19, 'org.broadleafcommerce.core.catalog.domain.CategoryXrefImpl', -3);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-20, 'org.broadleafcommerce.core.catalog.domain.CategoryXrefImpl', -4);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-21, 'org.broadleafcommerce.core.catalog.domain.CategoryXrefImpl', -5);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-22, 'org.broadleafcommerce.core.catalog.domain.CategoryXrefImpl', -6);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-23, 'org.broadleafcommerce.core.catalog.domain.FeaturedProductImpl', -2);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-24, 'org.broadleafcommerce.core.catalog.domain.FeaturedProductImpl', -3);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-25, 'org.broadleafcommerce.core.catalog.domain.FeaturedProductImpl', -4);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-26, 'org.broadleafcommerce.core.catalog.domain.FeaturedProductImpl', -5);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-27, 'org.broadleafcommerce.core.catalog.domain.FeaturedProductImpl', -6);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-28, 'org.broadleafcommerce.core.catalog.domain.CrossSaleProductImpl', -2);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-29, 'org.broadleafcommerce.core.catalog.domain.CrossSaleProductImpl', -3);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-30, 'org.broadleafcommerce.core.catalog.domain.CrossSaleProductImpl', -4);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-31, 'org.broadleafcommerce.core.catalog.domain.CrossSaleProductImpl', -5);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-32, 'org.broadleafcommerce.core.catalog.domain.CrossSaleProductImpl', -6);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-33, 'org.broadleafcommerce.core.catalog.domain.UpSaleProductImpl', -2);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-34, 'org.broadleafcommerce.core.catalog.domain.UpSaleProductImpl', -3);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-35, 'org.broadleafcommerce.core.catalog.domain.UpSaleProductImpl', -4);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-36, 'org.broadleafcommerce.core.catalog.domain.UpSaleProductImpl', -5);
INSERT INTO BLC_ADMIN_PERMISSION_ENTITY (ADMIN_PERMISSION_ENTITY_ID, CEILING_ENTITY, ADMIN_PERMISSION_ID) VALUES (-37, 'org.broadleafcommerce.core.catalog.domain.UpSaleProductImpl', -6);
So basically, you need the fully qualified classname for your entity as well as any entities that relate to that entity so that you can properly fetch all of them in the admin. Then, you can hook up the BLC_ADMIN_PERMISSION entries to a role, which you can then assign to an admin user. If you do not want to be fine-grained about each individual CRUD operation, you can use the 'PERMISSION_ALL' one.