批量提交

This commit is contained in:
2025-04-25 17:27:26 +08:00
parent 9a51adf2e8
commit 1a6fc7af64
64 changed files with 6208 additions and 276 deletions
+109
View File
@@ -0,0 +1,109 @@
{include file="public/header" /}
<form class="layui-form" style="padding:0 20%;">
<div class="layui-tab">
<ul class="layui-tab-title">
<li class="layui-this">个人信息</li>
<li>密码信息</li>
<li>其它信息</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<div style="padding:15px;">
<label class="layui-form-label">账户</label>
<div class="layui-input-block">
<div class="layui-form-label" style="color:#3881fd;text-align:left;width:100%;">{$aUser['account']}</div>
</div>
</div>
<div style="padding:15px;">
<label class="layui-form-label">说明</label>
<div class="layui-input-block">
<div class="layui-form-label" style="width:100%;text-align:left;color:#999;">账户用于登录系统的账号,不能修改</div>
</div>
</div>
<div style="padding:15px;">
<label class="layui-form-label">姓名</label>
<div class="layui-input-block">
<input type="text" class="layui-input" name="name" placeholder="请输入真实姓名" value="{$aUser['name']}">
</div>
</div>
<div style="padding:15px;">
<label class="layui-form-label">手机号</label>
<div class="layui-input-block">
<input type="text" class="layui-input" name="phone" placeholder="请输入手机号" value="{$aUser['phone']}">
</div>
</div>
<div style="padding:15px;">
<label class="layui-form-label">QQ号</label>
<div class="layui-input-block">
<input type="text" class="layui-input" name="qq" placeholder="请输入QQ号" value="{$aUser['qq']}">
</div>
</div>
<div style="padding:15px;">
<label class="layui-form-label">性别</label>
<div class="layui-input-block">
<input type="radio" name="sex" value="1" title="" {$aUser['status']==1?'checked':''}>
<input type="radio" name="sex" value="2" title="" {$aUser['status']==2?'checked':''}>
</div>
</div>
</div>
<div class="layui-tab-item">
<div style="padding:15px;">
<label class="layui-form-label">老密码</label>
<div class="layui-input-block">
<input type="text" class="layui-input" name="old_pw" placeholder="请输入老密码,不修改不填写">
</div>
</div>
<div style="padding:15px;">
<label class="layui-form-label">新密码</label>
<div class="layui-input-block">
<input type="text" class="layui-input" name="new_pw" placeholder="请输入新密码,不修改不填写">
</div>
</div>
</div>
<div class="layui-tab-item">
<div style="padding:15px;">
<label class="layui-form-label">登陆次数</label>
<div class="layui-input-block">
<div class="layui-form-label" style="text-align:left;width:100%;">{$aUser['login_count']}</div>
</div>
</div>
<div style="padding:15px;">
<label class="layui-form-label">注册时间</label>
<div class="layui-input-block">
<div class="layui-form-label" style="text-align:left;width:100%;">{:date('Y-m-d H:i:s',$aUser['create_time'])}</div>
</div>
</div>
<div style="padding:15px;">
<label class="layui-form-label">登陆时间</label>
<div class="layui-input-block">
<div class="layui-form-label" style="text-align:left;width:100%;">{:date('Y-m-d H:i:s',$aUser['update_time'])}</div>
</div>
</div>
</div>
</div>
</div>
</form>
<div class="layui-form-item" style="margin-top:10px;">
<div class="layui-input-block" style="text-align:center;">
<button type="button" class="layui-btn" onclick="save()">保存</button>
</div>
</div>
<script type="text/javascript">
layui.use(['layer','form','element'],function(){
var form = layui.form;
element = layui.element;
layer = layui.layer;
$ = layui.jquery;
});
function save(){
$.post("{$config['admin_route']}yunzeradmin/admininfo",$('form').serialize(),function(res){
if(res.code>0){
layer.msg(res.msg,{'icon':2});
}else{
layer.msg(res.msg,{'icon':1});
setTimeout(function(){parent.window.location.reload();},1000);
}
},'json');
}
</script>
{include file="public/tail" /}
+53
View File
@@ -0,0 +1,53 @@
{include file="public/header" /}
<form class="layui-form">
<div class="layui-form-item">
<label class="layui-form-label">角色名称</label>
<div class="layui-input-block">
<input type="text" class="layui-input" name="group_name" placeholder="请输入角色名称">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">状态</label>
<div class="layui-input-block">
<input type="radio" name="status" value="1" title="开启" checked="">
<input type="radio" name="status" value="0" title="禁用">
</div>
</div>
<div class="layui-form-itme">
<label class="layui-form-label">权限菜单</label>
{volist name="menus" id="vo"}
<hr>
<div class="layui-input-block">
<input type="checkbox" name="menu[{$vo.smid}]" lay-skin="primary" title="{$vo.label}">
<hr>
{volist name="vo.children" id="cvo"}
<input type="checkbox" name="menu[{$cvo.smid}]" lay-skin="primary" title="{$cvo.label}">
{/volist}
</div>
{/volist}
</div>
</form>
<div class="layui-form-item" style="margin-top:10px;">
<div class="layui-input-block">
<button type="button" class="layui-btn" onclick="save()">保存</button>
</div>
</div>
<script type="text/javascript">
layui.use(['layer','form'],function(){
var form = layui.form;
layer = layui.layer;
$ = layui.jquery;
});
function save(){
$.post("{$config['admin_route']}yunzeradmin/groupadd",$('form').serialize(),function(res){
if(res.code>0){
layer.msg(res.msg,{'icon':2});
}else{
layer.msg(res.msg,{'icon':1});
setTimeout(function(){parent.window.location.reload();},1000);
}
},'json');
}
</script>
{include file="public/tail" /}
+54
View File
@@ -0,0 +1,54 @@
{include file="public/header" /}
<form class="layui-form">
<input type="hidden" name="group_id" value="{$group.group_id}">
<div class="layui-form-item">
<label class="layui-form-label">角色名称</label>
<div class="layui-input-block">
<input type="text" class="layui-input" name="group_name" placeholder="请输入角色名称" value="{$group.group_name}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">状态</label>
<div class="layui-input-block">
<input type="radio" name="status" value="1" title="开启" {$group.status==1?'checked':''}>
<input type="radio" name="status" value="0" title="禁用" {$group.status==0?'checked':''}>
</div>
</div>
<div class="layui-form-itme">
<label class="layui-form-label">权限菜单</label>
{volist name="menus" id="vo"}
<hr>
<div class="layui-input-block">
<input type="checkbox" name="menu[{$vo.smid}]" lay-skin="primary" title="{$vo.label}" {:isset($group['rights']) && $group['rights'] && in_array($vo.smid,$group['rights'])?'checked':''}>
<hr>
{volist name="vo.children" id="cvo"}
<input type="checkbox" name="menu[{$cvo.smid}]" lay-skin="primary" title="{$cvo.label}" {:isset($group['rights']) && $group['rights'] && in_array($cvo.smid,$group['rights'])?'checked':''}>
{/volist}
</div>
{/volist}
</div>
</form>
<div class="layui-form-item" style="margin-top:10px;">
<div class="layui-input-block">
<button type="button" class="layui-btn" onclick="save()">保存</button>
</div>
</div>
<script type="text/javascript">
layui.use(['layer','form'],function(){
var form = layui.form;
layer = layui.layer;
$ = layui.jquery;
});
function save(){
$.post("{$config['admin_route']}yunzeradmin/groupedit",$('form').serialize(),function(res){
if(res.code>0){
layer.msg(res.msg,{'icon':2});
}else{
layer.msg(res.msg,{'icon':1});
setTimeout(function(){parent.window.location.reload();},1000);
}
},'json');
}
</script>
{include file="public/tail" /}
+97
View File
@@ -0,0 +1,97 @@
{include file="public/header" /}
<div class="config-container">
<div class="config-header" style="display:flex;justify-content: space-between;">
<div>
<span>角色列表</span>
</div>
<div>
<button type="button" class="layui-btn layui-btn-primary layui-btn-sm" onclick="add()">
<i class="layui-icon layui-icon-add-1"></i>添加
</button>
<button type="button" class="layui-btn layui-btn-sm layui-btn-primary" onclick="refresh()">
<i class="layui-icon layui-icon-refresh"></i>刷新
</button>
</div>
</div>
<table class="layui-table">
<thead>
<tr>
<th>角色名</th>
<th>状态</th>
<th>添加时间</th>
<th>操作</th>
</tr>
</thead>
<tbody>
{volist name="group" id='vo'}
<tr>
<td>{$vo.group_name}</td>
<td>{$vo.status==1?'开启':'<span style="color:red;">禁用</span>'}</td>
<td>{:date('Y-m-d H:i:s',$vo.create_time)}</td>
<td>
<button type="button" class="layui-btn layui-btn-primary layui-btn-xs"
onclick="edit({$vo.group_id})">
<i class="layui-icon layui-icon-edit"></i>编辑
</button>
<button type="button" class="layui-btn layui-btn-primary layui-btn-xs"
onclick="del({$vo.group_id})">
<i class="layui-icon layui-icon-delete"></i>删除
</button>
</td>
</tr>
{/volist}
</tbody>
</table>
</div>
<script type="text/javascript">
layui.use(['layer'], function () {
layer = layui.layer;
$ = layui.jquery;
});
// 添加
function add() {
layer.open({
type: 2,
title: '添加角色',
shade: 0.3,
area: ['450px', '550px'],
content: "{$config['admin_route']}yunzeradmin/groupadd"
});
}
// 编辑
function edit(group_id) {
layer.open({
type: 2,
title: '编辑角色',
shade: 0.3,
area: ['450px', '550px'],
content: "{$config['admin_route']}yunzeradmin/groupedit?group_id=" + group_id
});
}
// 删除
function del(group_id) {
layer.confirm('确定要删除吗?', {
icon: 3,
btn: ['确定', '取消']
}, function () {
$.post("{$config['admin_route']}yunzeradmin/groupdel", { 'group_id': group_id }, function (res) {
if (res.code > 0) {
layer.alert(res.msg, { icon: 2 });
} else {
layer.msg(res.msg, { icon: 1 });
setTimeout(function () { window.location.reload(); }, 1000);
}
}, 'json');
});
}
//刷新列表
function refresh() {
window.location.reload();
}
</script>
{include file="public/tail" /}
+84
View File
@@ -0,0 +1,84 @@
{include file="public/header" /}
<form class="layui-form">
<div class="layui-form-item">
<label class="layui-form-label">账户</label>
<div class="layui-input-inline">
<input type="text" class="layui-input" name="account" placeholder="账户请用邮箱">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">姓名</label>
<div class="layui-input-inline">
<input type="text" class="layui-input" name="name" placeholder="请输入真实姓名">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">手机号</label>
<div class="layui-input-inline">
<input type="text" class="layui-input" name="phone" placeholder="请输入手机号">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">QQ号</label>
<div class="layui-input-inline">
<input type="text" class="layui-input" name="qq" placeholder="请输入QQ号">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">角色</label>
<div class="layui-input-inline">
<select name="group_id">
<option value=0></option>
{volist name="group" id="vo"}
<option value="{$vo.group_id}">{$vo.group_name}</option>
{/volist}
</select>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">密码</label>
<div class="layui-input-inline">
<input type="text" class="layui-input" name="password" placeholder="请输入密码">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">性别</label>
<div class="layui-input-block">
<input type="radio" name="sex" value="1" title="" checked="">
<input type="radio" name="sex" value="2" title="">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">状态</label>
<div class="layui-input-block">
<input type="radio" name="status" value="1" title="开启" checked="">
<input type="radio" name="status" value="0" title="禁用">
</div>
</div>
</form>
<div class="layui-form-item">
<div class="layui-input-block">
<button type="button" class="layui-btn" onclick="save()">保存</button>
</div>
</div>
<script type="text/javascript">
layui.use(['layer','form'],function(){
form = layui.form;
layer = layui.layer;
$ = layui.jquery;
});
// 保存管理员
function save(){
$.post("{$config['admin_route']}yunzeradmin/useradd",$('form').serialize(),function(res){
if(res.code>0){
layer.alert(res.msg,{icon:2});
}else{
layer.msg(res.msg);
setTimeout(function(){parent.window.location.reload();},1000);
}
},'json');
}
</script>
{include file="public/tail" /}
+76
View File
@@ -0,0 +1,76 @@
{include file="public/header" /}
<form class="layui-form">
<input type="hidden" name="uid" value="{$lists.uid}">
<div class="layui-form-item">
<label class="layui-form-label">账户</label>
<div class="layui-input-inline"><input type="text" class="layui-input" value="{$lists.account}" readonly></div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">&nbsp;&nbsp;&nbsp;&nbsp;</label>
<div class="layui-input-inline">
<input type="text" class="layui-input" name="name" placeholder="请输入真实姓名" value="{$lists.name}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">手机号</label>
<div class="layui-input-inline">
<input type="text" class="layui-input" name="phone" placeholder="请输入手机号" value="{$lists.phone}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">QQ号</label>
<div class="layui-input-inline">
<input type="text" class="layui-input" name="qq" placeholder="请输入QQ号" value="{$lists.qq}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">角色</label>
<div class="layui-input-inline">
<select name="group_id">
<option value=0></option>
{volist name="group" id="vo"}
<option value="{$vo.group_id}" {$vo.group_id == $lists.group_id ? 'selected' : ''}>{$vo.group_name}</option>
{/volist}
</select>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">性别</label>
<div class="layui-input-block">
<input type="radio" name="sex" value="1" title="" {$lists.sex==1?'checked':''}>
<input type="radio" name="sex" value="2" title="" {$lists.sex==2?'checked':''}>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">状态</label>
<div class="layui-input-block">
<input type="radio" name="status" value="1" title="开启" {$lists.status==1?'checked':''}>
<input type="radio" name="status" value="0" title="禁用" {$lists.status==0?'checked':''}>
</div>
</div>
</form>
<div class="layui-form-item">
<div class="layui-input-block">
<button class="layui-btn" onclick="save()">保存</button>
</div>
</div>
<script type="text/javascript">
layui.use(['layer','form'],function(){
form = layui.form;
layer = layui.layer;
$ = layui.jquery;
});
// 保存管理员
function save(){
$.post("{$config['admin_route']}yunzeradmin/useredit",$('form').serialize(),function(res){
if(res.code>0){
layer.alert(res.msg,{icon:2});
}else{
layer.msg(res.msg);
setTimeout(function(){parent.window.location.reload();},1000);
}
},'json');
}
</script>
{include file="public/tail" /}
+112
View File
@@ -0,0 +1,112 @@
{include file="public/header" /}
<div class="config-container">
<div class="config-header" style="display:flex;justify-content: space-between;">
<div>
<span>用户列表</span>
</div>
<div>
<button type="button" class="layui-btn layui-btn-primary layui-btn-sm" onclick="add()">
<i class="layui-icon layui-icon-add-1"></i>添加
</button>
<button type="button" class="layui-btn layui-btn-sm layui-btn-primary" onclick="refresh()">
<i class="layui-icon layui-icon-refresh"></i>刷新
</button>
</div>
</div>
<table class="layui-table">
<thead>
<tr>
<th>真实姓名</th>
<th>账户</th>
<th>手机</th>
<th>QQ</th>
<th>角色</th>
<th>性别</th>
<th>状态</th>
<th>登陆次数</th>
<th>登陆时间</th>
<th>操作</th>
</tr>
</thead>
<tbody>
{volist name="lists" id='vo'}
<tr>
<td>{$vo.name}</td>
<td>{$vo.account}</td>
<td>{$vo.phone}</td>
<td>{$vo.qq}</td>
<td>{:isset($group[$vo.group_id])?$group[$vo.group_id]['group_name']:''}</td>
<td>
{if $vo['sex']==1}
<span style="color:red;"></span>
{elseif $vo['sex'] == 2 /}
<span style="color:green;"></span>
{else /}
未知
{/if}
</td>
<td>{$vo.status==1?'开启':'<span style="color:red;">禁用</span>'}</td>
<td>{$vo.login_count}</td>
<td>{:date('Y-m-d H:i:s',$vo.update_time)}</td>
<td>
<button type="button" class="layui-btn layui-btn-primary layui-btn-xs" onclick="edit({$vo.uid})">
<i class="layui-icon layui-icon-edit"></i>编辑
</button>
<button type="button" class="layui-btn layui-btn-primary layui-btn-xs" onclick="del({$vo.uid})">
<i class="layui-icon layui-icon-delete"></i>删除
</button>
</td>
</tr>
{/volist}
</tbody>
</table>
</div>
<script type="text/javascript">
layui.use(['layer'], function () {
layer = layui.layer;
$ = layui.jquery;
});
// 添加
function add() {
layer.open({
type: 2,
title: '添加管理员',
shade: 0.3,
area: ['450px', '550px'],
content: "{$config['admin_route']}yunzeradmin/useradd"
});
}
// 编辑
function edit(uid) {
layer.open({
type: 2,
title: '编辑管理员',
shade: 0.3,
area: ['450px', '550px'],
content: "{$config['admin_route']}yunzeradmin/useredit?uid=" + uid
});
}
// 删除
function del(uid) {
layer.confirm('确定要删除吗?', {
icon: 3,
btn: ['确定', '取消']
}, function () {
$.post("{$config['admin_route']}yunzeradmin/userdel", { 'uid': uid }, function (res) {
if (res.code > 0) {
layer.alert(res.msg, { icon: 2 });
} else {
layer.msg(res.msg);
setTimeout(function () { window.location.reload(); }, 1000);
}
}, 'json');
});
}
//刷新列表
function refresh() {
window.location.reload();
}
</script>
{include file="public/tail" /}