159 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			159 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Code generated by templ - DO NOT EDIT.
 | |
| 
 | |
| // templ: version: v0.3.898
 | |
| package menu
 | |
| 
 | |
| //lint:file-ignore SA4006 This context is only used if a nested component is present.
 | |
| 
 | |
| import "github.com/a-h/templ"
 | |
| import templruntime "github.com/a-h/templ/runtime"
 | |
| 
 | |
| import (
 | |
| 	"context"
 | |
| 
 | |
| 	"management/internal/erpserver/templ/base"
 | |
| 	"management/internal/erpserver/templ/component"
 | |
| 	"management/internal/pkg/mid"
 | |
| )
 | |
| 
 | |
| func List(ctx context.Context) templ.Component {
 | |
| 	return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
 | |
| 		templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
 | |
| 		if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil {
 | |
| 			return templ_7745c5c3_CtxErr
 | |
| 		}
 | |
| 		templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
 | |
| 		if !templ_7745c5c3_IsBuffer {
 | |
| 			defer func() {
 | |
| 				templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
 | |
| 				if templ_7745c5c3_Err == nil {
 | |
| 					templ_7745c5c3_Err = templ_7745c5c3_BufErr
 | |
| 				}
 | |
| 			}()
 | |
| 		}
 | |
| 		ctx = templ.InitializeContext(ctx)
 | |
| 		templ_7745c5c3_Var1 := templ.GetChildren(ctx)
 | |
| 		if templ_7745c5c3_Var1 == nil {
 | |
| 			templ_7745c5c3_Var1 = templ.NopComponent
 | |
| 		}
 | |
| 		ctx = templ.ClearChildren(ctx)
 | |
| 		templ_7745c5c3_Var2 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
 | |
| 			templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
 | |
| 			templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
 | |
| 			if !templ_7745c5c3_IsBuffer {
 | |
| 				defer func() {
 | |
| 					templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
 | |
| 					if templ_7745c5c3_Err == nil {
 | |
| 						templ_7745c5c3_Err = templ_7745c5c3_BufErr
 | |
| 					}
 | |
| 				}()
 | |
| 			}
 | |
| 			ctx = templ.InitializeContext(ctx)
 | |
| 			meuns := mid.GetCurMenus(ctx)
 | |
| 			templ_7745c5c3_Err = component.TemplBtn(meuns, false, "add", "refresh_cache").Render(ctx, templ_7745c5c3_Buffer)
 | |
| 			if templ_7745c5c3_Err != nil {
 | |
| 				return templ_7745c5c3_Err
 | |
| 			}
 | |
| 			templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 1, " ")
 | |
| 			if templ_7745c5c3_Err != nil {
 | |
| 				return templ_7745c5c3_Err
 | |
| 			}
 | |
| 			templ_7745c5c3_Err = component.TemplLink(meuns, "add_children", "edit").Render(ctx, templ_7745c5c3_Buffer)
 | |
| 			if templ_7745c5c3_Err != nil {
 | |
| 				return templ_7745c5c3_Err
 | |
| 			}
 | |
| 			templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 2, " <div class=\"layui-panel\"><table class=\"layui-hide\" id=\"tablelist\" lay-filter=\"tablelist\"></table></div>")
 | |
| 			if templ_7745c5c3_Err != nil {
 | |
| 				return templ_7745c5c3_Err
 | |
| 			}
 | |
| 			return nil
 | |
| 		})
 | |
| 		templ_7745c5c3_Err = base.Base(ctx, listCss(), listJs(ctx)).Render(templ.WithChildren(ctx, templ_7745c5c3_Var2), templ_7745c5c3_Buffer)
 | |
| 		if templ_7745c5c3_Err != nil {
 | |
| 			return templ_7745c5c3_Err
 | |
| 		}
 | |
| 		return nil
 | |
| 	})
 | |
| }
 | |
| 
 | |
| func listCss() templ.Component {
 | |
| 	return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
 | |
| 		templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
 | |
| 		if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil {
 | |
| 			return templ_7745c5c3_CtxErr
 | |
| 		}
 | |
| 		templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
 | |
| 		if !templ_7745c5c3_IsBuffer {
 | |
| 			defer func() {
 | |
| 				templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
 | |
| 				if templ_7745c5c3_Err == nil {
 | |
| 					templ_7745c5c3_Err = templ_7745c5c3_BufErr
 | |
| 				}
 | |
| 			}()
 | |
| 		}
 | |
| 		ctx = templ.InitializeContext(ctx)
 | |
| 		templ_7745c5c3_Var3 := templ.GetChildren(ctx)
 | |
| 		if templ_7745c5c3_Var3 == nil {
 | |
| 			templ_7745c5c3_Var3 = templ.NopComponent
 | |
| 		}
 | |
| 		ctx = templ.ClearChildren(ctx)
 | |
| 		return nil
 | |
| 	})
 | |
| }
 | |
| 
 | |
| func listJs(ctx context.Context) templ.Component {
 | |
| 	return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
 | |
| 		templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
 | |
| 		if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil {
 | |
| 			return templ_7745c5c3_CtxErr
 | |
| 		}
 | |
| 		templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
 | |
| 		if !templ_7745c5c3_IsBuffer {
 | |
| 			defer func() {
 | |
| 				templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
 | |
| 				if templ_7745c5c3_Err == nil {
 | |
| 					templ_7745c5c3_Err = templ_7745c5c3_BufErr
 | |
| 				}
 | |
| 			}()
 | |
| 		}
 | |
| 		ctx = templ.InitializeContext(ctx)
 | |
| 		templ_7745c5c3_Var4 := templ.GetChildren(ctx)
 | |
| 		if templ_7745c5c3_Var4 == nil {
 | |
| 			templ_7745c5c3_Var4 = templ.NopComponent
 | |
| 		}
 | |
| 		ctx = templ.ClearChildren(ctx)
 | |
| 		token := mid.GetCsrfToken(ctx)
 | |
| 		templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 3, "<script>\n        layui.use(['jquery', 'table', 'form', 'util', 'treeTable'], function () {\n            let $ = layui.jquery;\n            let table = layui.table;\n            let treetable = layui.treeTable;\n            let form = layui.form;\n            let util = layui.util;\n\n            treetable.render({\n                elem: '#tablelist',\n                url: '/system/menu/list',\n                method: 'post',\n                headers: { 'X-CSRF-Token': '")
 | |
| 		if templ_7745c5c3_Err != nil {
 | |
| 			return templ_7745c5c3_Err
 | |
| 		}
 | |
| 		templ_7745c5c3_Var5, templ_7745c5c3_Err := templruntime.ScriptContentInsideStringLiteral(token)
 | |
| 		if templ_7745c5c3_Err != nil {
 | |
| 			return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/erpserver/templ/system/menu/list.templ`, Line: 40, Col: 52}
 | |
| 		}
 | |
| 		_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var5)
 | |
| 		if templ_7745c5c3_Err != nil {
 | |
| 			return templ_7745c5c3_Err
 | |
| 		}
 | |
| 		templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 4, "' },\n                where: getQueryParams(),\n                height: function () {\n                    return $(window).height() - 22;\n                },\n                cols: [[\n                    { field: 'name', title: '名称', width: 360 },\n                    { field: 'display_name', title: '显示名称', width: 120, align: 'center' },\n                    {\n                        field: 'type', title: '类型', width: 100, align: 'center', templet: function (d) {\n                            switch (d.type) {\n                                case 'node': return '菜单节点';\n                                case 'menu': return '菜单';\n                                case 'btn': return '按钮';\n                            }\n                            return '';\n                        }\n                    },\n                    {\n                        field: 'avatar', title: '图标', width: 50, align: 'center', templet: function (d) {\n                            if (!d.avatar) { return ''; }\n                            return '<i class=\"' + d.avatar + '\"></i>'\n                        }\n                    },\n                    {\n                        field: 'status', title: '状态', width: 60, align: 'center', templet: function (d) {\n                            if (d.id === 0) { return ''; }\n\n                            switch (d.status) {\n                                case 0: return '<span style=\"color: green\">正常</span>';\n                                case -1: return '<span style=\"color: red\">删除</span>';\n                                default: return '其它';\n                            }\n                            return '';\n                        }\n                    },\n                    {\n                        field: 'is_list', title: '列表', width: 60, align: 'center', templet: function (d) {\n                            if (d.is_list) { return '<span style=\"color: green\">是</span>'; }\n                            return '<span style=\"color: red\">否</span>';\n                        }\n                    },\n                    { title: '操作', toolbar: '#actionBox', align: 'center', width: 200 },\n                    { field: 'url', title: 'url', width: 200 },\n                    { field: 'created_at', title: '创建时间', width: 160, align: 'center', templet: function (d) { return (!d.created_at || d.id === 0) ? '' : util.toDateString(d.created_at) } },\n                    { field: 'updated_at', title: '更新时间', width: 160, align: 'center', templet: function (d) { return !d.updated_at ? '' : util.toDateString(d.updated_at) } },\n                ]],\n                even: true,\n                page: true,\n                toolbar: '#toolbar',\n                defaultToolbar: [{\n                    title: '刷新',\n                    layEvent: 'refresh',\n                    icon: 'layui-icon-refresh',\n                }, 'filter', 'exports'],\n                view: {}\n            });\n\n            table.on('toolbar(tablelist)', function (obj) {\n                switch (obj.event) {\n                    case 'add': add(); break;\n                    case 'refresh_cache': refreshCache(); break;\n                    case 'refresh': refresh(); break;\n\n                }\n            });\n\n            function add() {\n                layer.open({\n                    type: 2,\n                    title: '新增菜单',\n                    shade: 0.1,\n                    area: ['99%', '98%'],\n                    content: \"/system/menu/add\"\n                });\n            }\n\n            function refreshCache() {\n                layer.confirm('确定要刷新菜单缓存数据吗?', { title: '提示' }, function (index, layero) {\n                    $.ajax({\n                        url: '/system/menu/refresh_cache',\n                        type: 'post',\n                        headers: { 'X-CSRF-Token': '")
 | |
| 		if templ_7745c5c3_Err != nil {
 | |
| 			return templ_7745c5c3_Err
 | |
| 		}
 | |
| 		templ_7745c5c3_Var6, templ_7745c5c3_Err := templruntime.ScriptContentInsideStringLiteral(token)
 | |
| 		if templ_7745c5c3_Err != nil {
 | |
| 			return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/erpserver/templ/system/menu/list.templ`, Line: 122, Col: 60}
 | |
| 		}
 | |
| 		_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var6)
 | |
| 		if templ_7745c5c3_Err != nil {
 | |
| 			return templ_7745c5c3_Err
 | |
| 		}
 | |
| 		templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 5, "' },\n                        success: function (result) {\n                            if (result.success) {\n                                layer.msg(result.msg, { icon: 1, time: 1000 }, function () {\n                                    table.reload('tablelist');\n                                });\n                            } else {\n                                layer.msg(result.msg, { icon: 2 })\n                            }\n                        }\n                    });\n                    layer.close(index); // 关闭弹窗\n                }, function (index, layero) {\n                    layer.close(index); // 关闭弹窗\n                });\n            }\n\n            function refresh() {\n                table.reload('tablelist');\n            }\n\n            table.on('tool(tablelist)', function (obj) {\n                switch (obj.event) {\n                    case 'add_children': addChildren(obj); break;\n                    case 'edit': edit(obj); break;\n                }\n            });\n\n            function addChildren(obj) {\n                layer.open({\n                    type: 2,\n                    title: '为 ' + obj.data.display_name + ' 新增子级',\n                    shade: 0.1,\n                    area: ['99%', '98%'],\n                    content: \"/system/menu/add_children?parentID=\" + obj.data['id']\n                });\n            }\n\n            function edit(obj) {\n                layer.open({\n                    type: 2,\n                    title: '修改',\n                    shade: 0.1,\n                    area: ['99%', '98%'],\n                    content: \"/system/menu/edit?id=\" + obj.data['id']\n                });\n            }\n\n            // 搜索条件\n            function getQueryParams() {\n                return {\n                    searchName: $('#searchName').val(),\n                    searchKey: $('#searchKey').val()\n                };\n            }\n\n            // 搜索\n            function search() {\n                table.reloadData('tablelist', {\n                    where: getQueryParams(),\n                    page: {\n                        curr: 1\n                    }\n                });\n                return false;\n            }\n        });\n    </script>")
 | |
| 		if templ_7745c5c3_Err != nil {
 | |
| 			return templ_7745c5c3_Err
 | |
| 		}
 | |
| 		return nil
 | |
| 	})
 | |
| }
 | |
| 
 | |
| var _ = templruntime.GeneratedTemplate
 |