package mysql import "myschools.me/heritage/heritage-api/model" func permissionDefined(permissionCode *string) (bool, error) { db, err := newDB() if err != nil { return false, err } var count int64 if err := db.Model(&model.Permission{}).Where("code = ?", *permissionCode).Count(&count).Error; err != nil { return false, err } return count > 0, nil } func roleHasPermission(roleID, permissionCode *string) (bool, error) { db, err := newDB() if err != nil { return false, err } var count int64 if err := db.Model(&model.Permission{}). Where("role_id = ? AND (code = ? OR code = ?)", *roleID, *permissionCode, "*"). Count(&count).Error; err != nil { return false, err } return count > 0, nil } func PermissionDefined(permissionCode *string) (bool, error) { return permissionDefined(permissionCode) } func RoleHasPermission(roleID, permissionCode *string) (bool, error) { return roleHasPermission(roleID, permissionCode) }