SELECT sys_menu.* FROM sys_menu {{if ne .user_id ""}} INNER JOIN ( SELECT DISTINCT sys_role_menu.menu_id FROM sys_role_menu, sys_user_role, sys_user WHERE sys_role_menu.del_flag = 0 AND sys_user_role.del_flag = 0 AND sys_user.id = '{{.user_id}}' AND sys_role_menu.role_id = sys_user_role.role_id AND sys_user_role.user_id = sys_user.id ) sys_role_menu ON sys_menu.id = sys_role_menu.menu_id {{end}} WHERE sys_menu.del_flag = 0 {{if ne .name ""}} AND sys_menu.name like '%{{.name}}%' {{end}} {{if ne .code ""}} AND sys_menu.code like '%{{.code}}%' {{end}} {{if ne .cn_id ""}} AND sys_menu.inheritance like '%{{.cn_id}}%' {{end}} {{if ne .type_op ""}} AND sys_menu.type {{.type_op}} {{.type}} {{end}} ORDER BY sys_menu.order_num, sys_menu.id LIMIT {{.rows}} OFFSET {{.offset}}