159 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			159 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Code generated by templ - DO NOT EDIT.
 | |
| 
 | |
| // templ: version: v0.3.898
 | |
| package user
 | |
| 
 | |
| //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, true, "add").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, "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=\"search-layer\" id=\"search-layer\" style=\"display: none;\"><div class=\"layui-form layui-row\"><div class=\"layui-col-xs12 layui-col-sm12 layui-col-md4\"><div class=\"layui-form-column\"><label for=\"status\" class=\"tips\">状态</label> <select name=\"status\" id=\"status\"><option value=\"0\">正常</option> <option value=\"-1\">删除</option> <option value=\"9999\">全部</option></select></div></div><div class=\"layui-col-xs12 layui-col-sm12 layui-col-md4\"><div class=\"layui-form-column\"><label for=\"id\" class=\"tips\">编号</label> <input type=\"text\" name=\"id\" id=\"id\" placeholder=\"请输入编号\" autocomplete=\"off\" class=\"layui-input\"></div></div><div class=\"layui-col-xs12 layui-col-sm12 layui-col-md4\"><div class=\"layui-form-column\"><label for=\"email\" class=\"tips\">邮箱</label> <input type=\"text\" name=\"email\" id=\"email\" placeholder=\"请输入邮箱\" autocomplete=\"off\" class=\"layui-input\"></div></div></div><div class=\"layui-form layui-row\"><div class=\"layui-col-xs12 layui-col-sm12 layui-col-md4\"><div class=\"layui-form-column\"><label for=\"username\" class=\"tips\">用户名</label> <input type=\"text\" name=\"username\" id=\"username\" placeholder=\"请输入用户名\" autocomplete=\"off\" class=\"layui-input\"></div></div></div></div><div class=\"layui-panel\"><table 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'], function () {\n            let $ = layui.jquery;\n            let table = layui.table;\n            let form = layui.form;\n            let util = layui.util;\n\n            table.render({\n                elem: '#tablelist',\n                url: \"/system/user/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/user/list.templ`, Line: 76, 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                page: true,\n                limit: 15,\n                limits: [15, 30, 45, 60, 75, 90],\n                cols: [[\n                    { field: 'email', title: '邮箱', align: 'left', width: 180, fixed: 'left' },\n                    { field: 'username', title: '用户名', align: 'left', width: 100 },\n                    {\n                        field: 'avatar', title: '头像', align: 'center', width: 90, templet: function (d) {\n                            if (d.avatar === 0 || d.avatar === undefined || d.avatar === '') { return ''; }\n                            if (d.avatar === '/statics/admin/images/avatar.jpg') {\n                                return '<img src=\"/statics/admin/images/avatar.jpg\" width=30 height=30 />';\n                            }\n                            return '<img src=\"' + d.avatar + '\" width=30 height=30 />';\n                        }\n                    },\n                    {\n                        field: 'department_name', title: '部门', align: 'left', width: 100, templet: function (d) {\n                            return d.department ? d.department.name : '';\n                        }\n                    },\n                    {\n                        field: 'role_name', title: '角色', align: 'left', width: 100, templet: function (d) {\n                            return d.role ? d.role.display_name : '';\n                        }\n                    },\n                    {\n                        field: 'gender', title: '性别', align: 'center', width: 50, templet: function (d) {\n                            if (d.gender == 0) {\n                                return '未知';\n                            } else if (d.gender == 1) {\n                                return '男';\n                            } else if (d.gender == 2) {\n                                return '女';\n                            }\n                        }\n                    },\n                    {\n                        field: 'status', title: '状态', align: 'center', width: 90, templet: function (row) {\n                            switch (row.status) {\n                                case 0: return '正常';\n                                case -1: return '删除';\n                                default: return '其它';\n                            }\n                            return '';\n                        }\n                    },\n                    { field: 'created_at', title: '创建时间', align: 'center', width: 160, templet: function (d) { return !d.created_at ? '' : util.toDateString(d.created_at) } },\n                    { field: 'updated_at', title: '更新时间', align: 'center', width: 160, templet: function (d) { return !d.updated_at ? '' : util.toDateString(d.updated_at) } },\n                    { title: '操作', toolbar: '#actionBox', align: 'center', width: 100, fixed: 'right' },\n                ]],\n                skin: 'grid',\n                toolbar: '#toolbar',\n                defaultToolbar: [{\n                    title: '刷新',\n                    layEvent: 'refresh',\n                    icon: 'layui-icon-refresh',\n                }, 'filter', 'exports'],\n                request: {\n                    pageName: 'page',\n                    limitName: 'rows'\n                }\n            });\n\n            table.on('toolbar(tablelist)', function (obj) {\n                switch (obj.event) {\n                    case 'add': add(); break;\n                    case 'search': search(); break;\n                    case 'refresh': refresh(); break;\n                }\n            });\n\n            function add(obj) {\n                layer.open({\n                    type: 2,\n                    title: '新增',\n                    shade: 0.1,\n                    area: ['99%', '98%'],\n                    content: \"/system/user/add\"\n                });\n            }\n\n            function search() {\n                layer.open({\n                    type: 1,\n                    offset: '20px',\n                    title: '搜索',\n                    content: $('#search-layer'), // 捕获的元素\n                    shade: 0.1,\n                    shadeClose: false,\n                    scrollbar: false,\n                    resize: false,\n                    move: false,\n                    skin: 'search-layer-open',\n                    area: ['50%', '350px'],\n                    btn: ['搜索', '重置'],\n                    btn1: function (index, layero) {\n                        console.log('搜索');\n                        search_btn();\n                        layer.close(index);\n                    },\n                    btn2: function (index, layero) {\n                        $('#id').val('');\n                        $('#email').val('');\n                        $('#username').val('');\n                        $('#status').val(9999);\n                        form.render('select');\n                        return false;\n                    }\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 'edit': edit(obj); break;\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/user/edit?id=\" + obj.data['id']\n                });\n            }\n\n            function roleMenuRefresh(obj) {\n                layer.confirm('确定要刷新角色权限吗?', { title: '提示' }, function (index, layero) {\n                    $.ajax({\n                        url: '/system/menu/roleMenuRefresh',\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/user/list.templ`, Line: 217, 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                        dataType: 'json',\n                        data: { \"roleName\": obj.data['name'] },\n                        success: function (result) {\n                            if (result.success) {\n                                layer.msg(result.msg, { icon: 1, time: 2000 });\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            // 搜索条件\n            function getQueryParams() {\n                return {\n                    status: $('#status').val(),\n                    name: $('#username').val(),\n                    email: $('#email').val(),\n                    id: $('#id').val()\n                };\n            }\n\n            // 搜索\n            function search_btn() {\n                table.reload('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
 |