333 lines
16 KiB
Plaintext
333 lines
16 KiB
Plaintext
<#assign base=request.contextPath />
|
||
<#import "../common/defaultLayout.ftl" as defaultLayout>
|
||
<@defaultLayout.layout>
|
||
<link rel="stylesheet" href="${base}/assets/css/amazeui.switch.css"/>
|
||
<div class="admin-content">
|
||
<div class="am-cf am-padding" style="padding:1rem 1.6rem 1.6rem 1rem;margin:0px;">
|
||
<!-- padding:1px 2px 3px 4px;上、右、下,和左 -->
|
||
<div class="am-fl am-cf"><strong class="am-text-primary am-text-lg">系统管理</strong> /
|
||
<small>前端账号管理</small>
|
||
</div>
|
||
</div>
|
||
<div class="am-g">
|
||
<div class="am-u-sm-12">
|
||
<form class="am-form" id="listForm" action="${base}/manager/list" method="POST">
|
||
<input type="hidden" id="keywords" name="keywords" value='${keywords!""}'/>
|
||
<table class="am-table am-table-bordered am-table-radius table-main" style="padding:0;">
|
||
<tbody>
|
||
<tr>
|
||
<th class="am-text-middle">姓名</th>
|
||
<td>
|
||
<div class="am-u-sm-10">
|
||
<input type="text" id="name" class="am-form-field am-input-sm"
|
||
value="${name!}"/>
|
||
</div>
|
||
</td>
|
||
<th class="am-text-middle">账号角色</th>
|
||
<td>
|
||
<div class="am-u-sm-10">
|
||
<select data-am-selected id="roleId" name="roleId">
|
||
<option value="-1">全部</option>
|
||
<#list roleList as role>
|
||
<option value=${role.id!} <#if roleId! =="${role.id}" >
|
||
selected
|
||
</#if>>${role.roleName!}</option>
|
||
</#list>
|
||
</select>
|
||
</div>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<th class="am-text-middle">手机号</th>
|
||
<td>
|
||
<div class="am-u-sm-10">
|
||
<input type="text" id="phone" class="am-form-field am-input-sm"
|
||
value="${phone!}"/>
|
||
</div>
|
||
</td>
|
||
<th class="am-text-middle">所属区域</th>
|
||
<td>
|
||
<div class="am-u-sm-10">
|
||
<select id="regionId" name="regionId"
|
||
data-am-selected="{btnSize: 'sm',maxHeight: 200,searchBox: 1}">
|
||
<option value="-1">全部</option>
|
||
<#if regionList?exists>
|
||
<#list regionList as node>
|
||
<option value="${node.id!}" <#if regionId! == "${node.id}" >
|
||
selected </#if>>${node.name}</option>
|
||
</#list>
|
||
</#if>
|
||
|
||
</select>
|
||
</div>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<th class="am-text-middle">归属单位</th>
|
||
<td>
|
||
<div class="am-u-sm-10">
|
||
<input type="text" id="company" class="am-form-field am-input-sm"
|
||
value="${company!}"/>
|
||
</div>
|
||
</td>
|
||
<td colspan="4">
|
||
<div align='right'>
|
||
<button type="button" class="am-btn am-btn-default am-btn-sm am-text-secondary"
|
||
id="submit-btn">搜索
|
||
</button>
|
||
</div>
|
||
</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
</form>
|
||
</div>
|
||
<div class="am-u-sm-12 am-u-md-12" style="padding:0 1.6rem 1.6rem 1rem;margin:0;">
|
||
<div class="am-btn-toolbar" style="padding-left:.5rem;">
|
||
<div class="am-btn-group am-btn-group-xs">
|
||
<@shiro.hasPermission name="MANAGER_ADD">
|
||
<button type="button" class="am-btn am-btn-default"
|
||
onclick="location.href='${base}/manager/add'">
|
||
<span class="am-icon-plus"></span>
|
||
新增
|
||
</button>
|
||
</@shiro.hasPermission>
|
||
<@shiro.hasPermission name="MANAGER_DELETE">
|
||
<button type="button" id="deleteButton" disabled="disabled"
|
||
class="am-btn am-btn-default"
|
||
onclick="deleteAll('${base}/manager/delete')"><span
|
||
class="am-icon-trash-o"></span> 删除
|
||
</button>
|
||
</@shiro.hasPermission>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="am-g">
|
||
<div class="am-u-sm-12 am-scrollable-horizontal">
|
||
<!-- padding:1px 2px 3px 4px;上、右、下,和左 -->
|
||
<table class="am-table am-table-striped am-table-hover table-main">
|
||
<thead>
|
||
<tr class="am-text-nowrap">
|
||
<th class="table-check">
|
||
<input type="checkbox" id="allCheck"></th>
|
||
<th class="table-title">姓名</th>
|
||
<th class="table-date">角色</th>
|
||
<th class="table-title">手机号码</th>
|
||
<th class="table-date">所属区域</th>
|
||
<th class="table-title">归属单位</th>
|
||
<th class="table-date">备注</th>
|
||
<th class="table-date">创建时间</th>
|
||
<th class="table-set am-text-center">操作</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<#if (pager.list)?exists>
|
||
<#list pager.list as list>
|
||
<tr>
|
||
<td>
|
||
<input type="checkbox" name="ids" value="${list.id}"/>
|
||
</td>
|
||
<td>${list.name!}</td>
|
||
<td>${list.roleName!}</td>
|
||
<td>${list.phone!}</td>
|
||
<td>${list.regionName!}</td>
|
||
<td>${list.company!}</td>
|
||
<td>${list.remark!}</td>
|
||
<td><#if list.createTime??>${list.createTime?datetime}</#if></td>
|
||
<td>
|
||
<div class="am-btn-toolbar">
|
||
<div class="am-btn-group am-btn-group-xs">
|
||
<@shiro.hasPermission name="MANAGER_EDIT">
|
||
<button type="button"
|
||
class="am-btn am-btn-default am-btn-xs am-text-secondary"
|
||
onclick="location.href='${base}/manager/edit?id=${list.id?c}'">
|
||
<span class="am-icon-pencil-square-o"></span>
|
||
编辑
|
||
</button>
|
||
</@shiro.hasPermission>
|
||
<@shiro.hasPermission name="MANAGER_RESET">
|
||
<button type="button"
|
||
class="am-btn am-btn-default am-btn-xs am-text-secondary"
|
||
onclick="resetPassword('${base}/manager/resetPassword?managerId=${list.id}')"><span
|
||
class="am-icon-pencil-square-o"></span>密码重置
|
||
</button>
|
||
</@shiro.hasPermission>
|
||
<@shiro.hasPermission name="MANAGER_BINDING">
|
||
<#if (list.roleName) = '工地巡查员'>
|
||
<button type="button"
|
||
class="am-btn am-btn-default am-btn-xs am-text-secondary"
|
||
onclick="location.href='${base}/binding/select?id=${list.id?c}&type=app'">
|
||
<span class="am-icon-pencil-square-o"></span>
|
||
绑定工地
|
||
</button>
|
||
</#if>
|
||
</@shiro.hasPermission>
|
||
<div class="am-btn-group am-btn-group-xs">
|
||
<div class="switch-button">
|
||
<#--是否启用:0禁用,1启用-->
|
||
<input id="${list.id}" type="checkbox" data-size='xs'
|
||
data-am-switch data-off-text="已禁用" data-on-text="已启用"
|
||
<#if list.enabled==1 >checked</#if>/>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</td>
|
||
</tr>
|
||
</#list>
|
||
</#if>
|
||
</tbody>
|
||
</table>
|
||
|
||
<div class="am-cf">
|
||
<!-- 分页 -->
|
||
<#if (pager.list)?exists && (pager.list?size>0) >
|
||
<div class="am-fr">
|
||
<#include "../common/common_pager.ftl">
|
||
</div>
|
||
<#else>
|
||
<div class="am-kai" align="center">
|
||
<h3>没有找到任何记录!</h3>
|
||
</div>
|
||
</#if>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</@defaultLayout.layout>
|
||
|
||
<script src="${base}/assets/js/amazeui.switch.js"></script>
|
||
<script type="text/javascript">
|
||
var urlBase = "${base}";
|
||
var url;
|
||
|
||
$(function () {
|
||
/*表单提交 start*/
|
||
var keywordsObj = {};
|
||
$("#submit-btn").on("click", function () {
|
||
if ($("#name").val())
|
||
keywordsObj.name = $("#name").val();
|
||
if ($("#roleId").val())
|
||
keywordsObj.roleId = parseInt($("#roleId").val());
|
||
if ($("#phone").val())
|
||
keywordsObj.phone = $("#phone").val();
|
||
if ($("#regionId").val())
|
||
keywordsObj.regionId = parseInt($("#regionId").val());
|
||
if ($("#company").val())
|
||
keywordsObj.company = $("#company").val();
|
||
var keywords = "";
|
||
if (!$.isEmptyObject(keywordsObj)) {
|
||
keywords = JSON.stringify(keywordsObj);
|
||
}
|
||
console.log("keywords = " + keywords);
|
||
$("#keywords").val(keywords);
|
||
$("#listForm").submit();
|
||
});
|
||
/*表单提交 end*/
|
||
|
||
/*复选框全选效果 start*/
|
||
$("body").on('click', '.list-item', function () {
|
||
$(".list-item").removeClass("tr-selected");
|
||
$(this).addClass('tr-selected');
|
||
});
|
||
$("#allCheck").click(function () {
|
||
$('input[name="ids"]').prop("checked", this.checked);
|
||
$("#deleteButton").prop("disabled", $("input[name='ids']:checked").length == 0 ? true : false);
|
||
});
|
||
var $citySubBox = $("input[name='ids']");
|
||
$citySubBox.click(function () {
|
||
$("#allCheckCity").prop("checked", $citySubBox.length == $("input[name='ids']:checked").length ? true : false);
|
||
$("#deleteButton").prop("disabled", $("input[name='ids']:checked").length == 0 ? true : false);
|
||
});
|
||
/*复选框全选效果 end*/
|
||
|
||
});
|
||
|
||
/*批量删除角色 start*/
|
||
var deleteAll = function (url) {
|
||
var $deleteButton = $("#deleteButton");// 删除按钮
|
||
var ids = "";
|
||
$("input[name='ids']:checked").each(function () {
|
||
ids += $(this).val() + "#%#";
|
||
});
|
||
var params = {ids: ids};
|
||
if (window.confirm('确定要删除吗?')) {
|
||
$.ajax({
|
||
url: url,
|
||
data: params,
|
||
dataType: "json",
|
||
async: false,
|
||
beforeSend: function (data) {
|
||
$deleteButton.prop("disabled", true)
|
||
},
|
||
success: function (data) {
|
||
$deleteButton.prop("disabled", false)
|
||
if (data.status == 0) {
|
||
layer.alert(data.msg);
|
||
window.location.href = window.location.href;
|
||
} else if (data.status == 1) {
|
||
layer.alert(data.msg);
|
||
}
|
||
}
|
||
});
|
||
}
|
||
}
|
||
/*批量删除角色 end*/
|
||
|
||
var resetPassword = function (url) {
|
||
var params = {};
|
||
if (window.confirm('确定要重置密码吗?')) {
|
||
$.ajax({
|
||
url: url,
|
||
data: params,
|
||
dataType: "json",
|
||
async: false,
|
||
beforeSend: function (data) {
|
||
},
|
||
success: function (data) {
|
||
if (data.status == 0) {
|
||
layer.alert("重置成功");
|
||
window.location.href = window.location.href;
|
||
} else if (data.status == 1) {
|
||
layer.alert("重置失败");
|
||
}
|
||
}
|
||
});
|
||
}
|
||
}
|
||
|
||
/**
|
||
* 为每个启用或禁用按钮增加事件
|
||
*/
|
||
$(function () {
|
||
var $mycheckbox = $('.switch-button').find("input[type='checkbox']");
|
||
$mycheckbox.each(function () {
|
||
var myid = $(this).attr("id");
|
||
var prop = $(this).attr("prop");
|
||
|
||
$(this).on({
|
||
'switchChange.bootstrapSwitch': function (event, state) {
|
||
toggle(myid, state ? 1 : 0);
|
||
}
|
||
});
|
||
|
||
});
|
||
|
||
});
|
||
|
||
//启用或者禁用
|
||
var toggle = function (id, status) {
|
||
$.ajax({
|
||
url: "${base}/manager/changeStatus",
|
||
data: {id: id, enabled: status},
|
||
type: "post",
|
||
dataType: "json",
|
||
async: false,
|
||
success: function (data) {
|
||
parent.layer.msg(data.msg);
|
||
}
|
||
});
|
||
};
|
||
</script>
|