This commit is contained in:
walkor 2022-12-04 15:56:37 +08:00
parent 6e20a09b86
commit 3ef5204166
3 changed files with 78 additions and 75 deletions

View File

@ -107,68 +107,69 @@
const UPDATE_URL = "/app/admin/admin/update";
// 字段 创建时间 created_at
layui.use(['laydate'], function() {
layui.use(["laydate"], function() {
layui.laydate.render({
elem: '#created_at',
range: ['#created_at-date-start', '#created_at-date-end'],
elem: "#created_at",
range: ["#created_at-date-start", "#created_at-date-end"],
});
})
// 表格渲染
layui.use(['table', 'form', 'jquery', 'common', 'popup'], function() {
layui.use(['table', 'form', 'jquery', 'common', 'popup', 'util'], function() {
let table = layui.table;
let form = layui.form;
let $ = layui.jquery;
let common = layui.common;
let util = layui.util;
// 表头参数
let cols = [
{
type: 'checkbox'
type: "checkbox"
},{
title: 'ID',
field: 'id',
title: "ID",
field: "id",
},{
title: '用户名',
field: 'username',
title: "用户名",
field: "username",
},{
title: '昵称',
field: 'nickname',
title: "昵称",
field: "nickname",
},{
title: '密码',
field: 'password',
title: "密码",
field: "password",
hide: true,
},{
title: '头像',
field: 'avatar',
title: "头像",
field: "avatar",
templet: function (d) {
return '<img src="'+d.avatar+'" style="max-width:32px;max-height:32px;" alt="" />';
return '<img src="'+encodeURI(d['avatar'])+'" style="max-width:32px;max-height:32px;" alt="" />'
}
},{
title: '邮箱',
field: 'email',
title: "邮箱",
field: "email",
},{
title: '手机',
field: 'mobile',
title: "手机",
field: "mobile",
},{
title: '创建时间',
field: 'created_at',
title: "创建时间",
field: "created_at",
hide: true,
},{
title: '更新时间',
field: 'updated_at',
title: "更新时间",
field: "updated_at",
hide: true,
},{
title: '角色',
field: 'roles',
title: "角色",
field: "roles",
templet: function (d) {
let field = 'roles';
if (typeof d[field] == "undefined") return '';
let field = "roles";
if (typeof d[field] == "undefined") return "";
let items = [];
layui.each((d[field] + '').split(','), function (k , v) {
layui.each((d[field] + "").split(","), function (k , v) {
items.push(apiResults[field][v] || v);
});
return items.join(',');
return util.escape(items.join(","));
}
},{
title: "操作",
@ -182,19 +183,19 @@
function render()
{
table.render({
elem: '#data-table',
elem: "#data-table",
url: SELECT_API,
page: true,
cols: [cols],
skin: 'line',
size: 'lg',
toolbar: '#table-toolbar',
skin: "line",
size: "lg",
toolbar: "#table-toolbar",
autoSort: false,
defaultToolbar: [{
title: '刷新',
layEvent: 'refresh',
icon: 'layui-icon-refresh',
}, 'filter', 'print', 'exports']
title: "刷新",
layEvent: "refresh",
icon: "layui-icon-refresh",
}, "filter", "print", "exports"]
});
}
@ -208,7 +209,7 @@
let [field, url] = item;
$.ajax({
url: url,
dateType: 'json',
dateType: "json",
success: function (res) {
function travel(items) {
for (let k in items) {

View File

@ -91,36 +91,37 @@
const INSERT_API = "/app/admin/admin/insert";
// 字段 头像 avatar
layui.use(['upload', 'layer', 'jquery'], function() {
let input = layui.jquery('#avatar').prev();
input.prev().attr('src', input.val());
layui.use(["upload", "layer", "jquery"], function() {
let input = layui.jquery("#avatar").prev();
input.prev().attr("src", input.val());
layui.upload.render({
elem: '#avatar',
url: '/app/admin/upload/avatar',
value: '/app/admin/avatar.png',
acceptMime: 'image/gif,image/jpeg,image/jpg,image/png',
elem: "#avatar",
url: '/app/admin/upload/avatar',
value: '/app/admin/avatar.png',
acceptMime: 'image/gif,image/jpeg,image/jpg,image/png',
field: '__file__',
done: function (res) {
if (res.code > 0) return layui.layer.msg(res.msg);
this.item.prev().val(res.data.path).prev().attr('src', res.data.path);
this.item.prev().val(res.data.path).prev().attr("src", res.data.path);
}
});
});
// 字段 角色 roles
layui.use(['jquery', 'xmSelect'], function() {
layui.use(["jquery", "xmSelect"], function() {
layui.jquery.ajax({
url: '/app/admin/admin-role/select?format=select',
dataType: 'json',
url: "/app/admin/admin-role/select?format=select",
dataType: "json",
success: function (e) {
let value = layui.jquery('#roles').attr('value');
let initValue = value ? value.split(',') : [];
let value = layui.jquery("#roles").attr("value");
let initValue = value ? value.split(",") : [];
layui.xmSelect.render({
el: '#roles',
name: 'roles',
el: "#roles",
name: "roles",
initValue: initValue,
data: e.data,
tree: {show: true},
toolbar: {show: true,"list":["ALL","CLEAR","REVERSE"]},
data: e.data,
tree: {"show":true},
toolbar: {"show":true,"list":["ALL","CLEAR","REVERSE"]},
})
}
});

View File

@ -108,42 +108,43 @@
}
if (typeof obj[0] === 'undefined' || !obj[0].nodeName) return;
if (obj[0].nodeName.toLowerCase() === 'textarea') {
obj.html(layui.util.escape(value));
obj.val(layui.util.escape(value));
} else {
obj.attr('value', value);
}
});
// 字段 头像 avatar
layui.use(['upload', 'layer', 'jquery'], function() {
let input = layui.jquery('#avatar').prev();
input.prev().attr('src', input.val());
layui.use(["upload", "layer", "jquery"], function() {
let input = layui.jquery("#avatar").prev();
input.prev().attr("src", input.val());
layui.upload.render({
elem: '#avatar',
url: '/app/admin/upload/avatar',
acceptMime: 'image/gif,image/jpeg,image/jpg,image/png',
elem: "#avatar",
url: '/app/admin/upload/avatar',
acceptMime: 'image/gif,image/jpeg,image/jpg,image/png',
field: '__file__',
done: function (res) {
if (res.code > 0) return layui.layer.msg(res.msg);
this.item.prev().val(res.data.path).prev().attr('src', res.data.path);
this.item.prev().val(res.data.path).prev().attr("src", res.data.path);
}
});
});
// 字段 角色 roles
layui.use(['jquery', 'xmSelect'], function() {
layui.use(["jquery", "xmSelect"], function() {
layui.jquery.ajax({
url: '/app/admin/admin-role/select?format=select',
dataType: 'json',
url: "/app/admin/admin-role/select?format=select",
dataType: "json",
success: function (e) {
let value = layui.jquery('#roles').attr('value');
let initValue = value ? value.split(',') : [];
let value = layui.jquery("#roles").attr("value");
let initValue = value ? value.split(",") : [];
layui.xmSelect.render({
el: '#roles',
name: 'roles',
el: "#roles",
name: "roles",
initValue: initValue,
data: e.data,
tree: {show: true},
toolbar: {show: true,"list":["ALL","CLEAR","REVERSE"]},
data: e.data,
tree: {"show":true},
toolbar: {"show":true,"list":["ALL","CLEAR","REVERSE"]},
})
}
});