添加项目文件。
This commit is contained in:
@@ -0,0 +1,131 @@
|
||||
|
||||
layui.define(["table", "admin", "form", 'user', 'tree'], function (e) {
|
||||
var i = (layui.$, layui.admin),
|
||||
$ = layui.$,
|
||||
t = layui.view,
|
||||
l = layui.table,
|
||||
r = layui.form,
|
||||
tree = layui.tree,
|
||||
admin = layui.admin,
|
||||
setter = layui.setter;
|
||||
var treedata = [];
|
||||
//提交数据
|
||||
|
||||
l.render({
|
||||
elem: "#LAY-user-back-manage",
|
||||
url: setter.baseurl + "adminapi/banner/list",
|
||||
method: "post",
|
||||
contentType: "application/json",
|
||||
page: true,
|
||||
where: {
|
||||
keyWord: "",
|
||||
state: -1
|
||||
},
|
||||
request: {
|
||||
pageName: 'pageIndex' //页码的参数名称,默认:page
|
||||
, limitName: 'pageSize' //每页数据量的参数名,默认:limit
|
||||
},
|
||||
limit: 10,
|
||||
headers: {
|
||||
'token': layui.data(setter.tableName)[setter.request.tokenName]
|
||||
},
|
||||
cols: [
|
||||
[
|
||||
{
|
||||
field: "title",
|
||||
title: "标题",
|
||||
}, {
|
||||
field: "url",
|
||||
title: "链接"
|
||||
}
|
||||
, {
|
||||
field: "times",
|
||||
title: "时长(秒)"
|
||||
}, {
|
||||
field: "seeCount",
|
||||
title: "浏览次数"
|
||||
}, {
|
||||
field: "state",
|
||||
title: "状态",
|
||||
templet: function (d) {
|
||||
if (d.state == 1)
|
||||
return "正常";
|
||||
else
|
||||
return "停止"
|
||||
}
|
||||
}, {
|
||||
field: "position",
|
||||
title: "位置",
|
||||
templet: function (d) {
|
||||
var str = "";
|
||||
console.log(d)
|
||||
d.position.forEach(function (currentValue, index, array) {
|
||||
|
||||
str += currentValue.title + ","
|
||||
});
|
||||
|
||||
return str;
|
||||
}
|
||||
}, {
|
||||
field: "createTime",
|
||||
title: "加入时间",
|
||||
sort: !0
|
||||
}, {
|
||||
title: "操作",
|
||||
align: "center",
|
||||
fixed: "right",
|
||||
toolbar: "#table-banneradmin-admin"
|
||||
}]
|
||||
],
|
||||
text: "对不起,加载出现异常!",
|
||||
response: {
|
||||
statusName: 'code', //数据状态的字段名称,默认:code
|
||||
statusCode: 0, //成功的状态码,默认:0
|
||||
msgName: 'info', //状态信息的字段名称,默认:msg
|
||||
countName: 'count', //数据总数的字段名称,默认:count
|
||||
dataName: 'data' //数据列表的字段名称,默认:data
|
||||
}
|
||||
}),
|
||||
|
||||
l.on("tool(LAY-user-back-manage)", function (e) {
|
||||
var l = e.data;
|
||||
console.log(e.event)
|
||||
if ("del" === e.event) {
|
||||
layer.confirm("确定删除此广告?", function (i) {
|
||||
//提交数据
|
||||
admin.req({
|
||||
method: "get",
|
||||
url: setter.baseurl + "adminapi/banner/delete?id=" + e.data.id,//实际使用请改成服务端真实接口
|
||||
async: true,
|
||||
done: function (res) {
|
||||
|
||||
e.del(), layer.close(i)
|
||||
}
|
||||
})
|
||||
|
||||
})
|
||||
}
|
||||
if ("edit" === e.event) {
|
||||
i.popup({
|
||||
title: "编辑广告",
|
||||
area: ["500px", "600px"],
|
||||
id: "LAY-popup-user-add",
|
||||
success: function (e, i) {
|
||||
t(this.id).render("user/administrators/bannerform", l).done(function () {
|
||||
|
||||
r.render(null, "layuiadmin-form-admin"),
|
||||
|
||||
r.on("submit(LAY-user-back-submit)", function (e) {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
}), e("banneradmin", {})
|
||||
});
|
||||
@@ -0,0 +1,142 @@
|
||||
/** layuiAdmin.pro-v1.4.0 LPPL License By https://www.layui.com/admin/ */;
|
||||
layui.define(function (exports) {
|
||||
var $ = layui.$;
|
||||
var i = (layui.$, layui.layer, layui.laytpl, layui.setter, layui.view, layui.admin);
|
||||
|
||||
// Helper: convert PascalCase or any case keys to camelCase recursively
|
||||
function toCamelKey(s) {
|
||||
if (!s || typeof s !== 'string') return s;
|
||||
// handle underscores and PascalCase
|
||||
var str = s.replace(/_([a-z])/g, function (m, p1) { return p1.toUpperCase(); });
|
||||
// if contains uppercase letters after first char, convert first char to lower
|
||||
return str.charAt(0).toLowerCase() + str.slice(1);
|
||||
}
|
||||
|
||||
function convertKeysToCamel(obj) {
|
||||
if (obj === null || obj === undefined) return obj;
|
||||
if (Array.isArray(obj)) return obj.map(convertKeysToCamel);
|
||||
if (typeof obj === 'object') {
|
||||
var res = {};
|
||||
for (var k in obj) {
|
||||
if (!Object.prototype.hasOwnProperty.call(obj, k)) continue;
|
||||
var nk = toCamelKey(k);
|
||||
res[nk] = convertKeysToCamel(obj[k]);
|
||||
}
|
||||
return res;
|
||||
}
|
||||
return obj;
|
||||
}
|
||||
|
||||
// Wrap admin.req so that all responses have their .data keys converted to camelCase
|
||||
if (i && i.req) {
|
||||
var _origReq = i.req.bind(i);
|
||||
i.req = function (options) {
|
||||
if (!options) return _origReq(options);
|
||||
var userDone = options.done;
|
||||
options.done = function (res) {
|
||||
try {
|
||||
if (res && res.data) {
|
||||
res.data = convertKeysToCamel(res.data);
|
||||
}
|
||||
} catch (e) {
|
||||
console && console.error && console.error('convertKeysToCamel error', e);
|
||||
}
|
||||
if (typeof userDone === 'function') userDone(res);
|
||||
};
|
||||
return _origReq(options);
|
||||
};
|
||||
}
|
||||
|
||||
// Enum definitions: populate as needed. Keys are field names in camelCase, values are arrays of {value,text}
|
||||
window.enumDefinitions = window.enumDefinitions || {
|
||||
fishType: [{ value: 1, text: '普通鱼' }, { value: 2, text: 'Boss鱼' }, { value: 3, text: '黄金鱼' }, { value: 4, text: '特殊鱼' }, { value: 5, text: '特殊Boss' }],
|
||||
saleType: [{ value: 1, text: '钻石' }, { value: 2, text: '房卡' }, { value: 4, text: '金币' }, { value: 5, text: '道具' }]
|
||||
};
|
||||
|
||||
function replaceInputWithSelect($form, name, options, currentValue) {
|
||||
var $input = $form.find('[name="' + name + '"]');
|
||||
if ($input.length === 0) return;
|
||||
// create select
|
||||
var $select = $('<select></select>');
|
||||
$select.attr('name', name);
|
||||
$options = options || [];
|
||||
$select.append($('<option value=""></option>'));
|
||||
$options.forEach(function (opt) {
|
||||
var $opt = $('<option></option>').attr('value', opt.value).text(opt.text);
|
||||
if (String(opt.value) === String(currentValue)) $opt.attr('selected', 'selected');
|
||||
$select.append($opt);
|
||||
});
|
||||
$input.replaceWith($select);
|
||||
}
|
||||
|
||||
// Normalize input/select/textarea name attributes to camelCase
|
||||
function normalizeFormInputNames($container) {
|
||||
try {
|
||||
var $root = $($container || document);
|
||||
$root.find('input[name],select[name],textarea[name]').each(function () {
|
||||
var $el = $(this);
|
||||
var name = $el.attr('name');
|
||||
if (!name) return;
|
||||
var newName = toCamelKey(name);
|
||||
if (newName !== name) {
|
||||
$el.attr('name', newName);
|
||||
}
|
||||
});
|
||||
} catch (e) {
|
||||
console && console.error && console.error('normalizeFormInputNames error', e);
|
||||
}
|
||||
}
|
||||
|
||||
window.renderEnumControls = function ($container) {
|
||||
try {
|
||||
var $ = layui.$;
|
||||
var $form = $($container || document);
|
||||
// normalize names first
|
||||
normalizeFormInputNames($form);
|
||||
Object.keys(window.enumDefinitions).forEach(function (field) {
|
||||
var options = window.enumDefinitions[field];
|
||||
// find any input/select with this name and replace if it's not already a select
|
||||
var $els = $form.find('[name="' + field + '"]');
|
||||
$els.each(function () {
|
||||
var $el = $(this);
|
||||
if ($el.is('select')) return; // already select
|
||||
var currentVal = $el.val();
|
||||
replaceInputWithSelect($form, field, options, currentVal);
|
||||
});
|
||||
});
|
||||
} catch (e) {
|
||||
console && console.error && console.error('renderEnumControls error', e);
|
||||
}
|
||||
};
|
||||
|
||||
// Wrap form.render to invoke enum rendering after original render
|
||||
if (layui && layui.form && layui.form.render) {
|
||||
var _origFormRender = layui.form.render.bind(layui.form);
|
||||
layui.form.render = function () {
|
||||
var res = _origFormRender.apply(null, arguments);
|
||||
try {
|
||||
// arguments may include filter name; find forms with that lay-filter
|
||||
var filter = arguments && arguments.length ? arguments[0] : null;
|
||||
if (typeof filter === 'string') {
|
||||
// find forms with lay-filter
|
||||
var $forms = layui.$("[lay-filter='" + filter + "']");
|
||||
$forms.each(function () { window.renderEnumControls(this); });
|
||||
} else {
|
||||
window.renderEnumControls(document);
|
||||
}
|
||||
} catch (e) { }
|
||||
return res;
|
||||
};
|
||||
}
|
||||
|
||||
i.events.logout = function () {
|
||||
i.req({
|
||||
url: "./json/user/logout.js",
|
||||
type: "get",
|
||||
data: {},
|
||||
done: function (e) {
|
||||
i.exit()
|
||||
}
|
||||
})
|
||||
}, exports("common", {})
|
||||
});
|
||||
@@ -0,0 +1,93 @@
|
||||
|
||||
layui.define(["table", "admin", "form", 'user', 'tree'], function (e) {
|
||||
var i = (layui.$, layui.admin),
|
||||
$ = layui.$,
|
||||
t = layui.view,
|
||||
l = layui.treeTable,
|
||||
r = layui.form,
|
||||
tree = layui.tree,
|
||||
admin = layui.admin,
|
||||
setter = layui.setter;
|
||||
var treedata = [];
|
||||
//提交数据
|
||||
|
||||
l.render({
|
||||
elem: "#LAY-user-back-dic",
|
||||
url: setter.baseurl + "adminapi/System/dic/list",
|
||||
method: "get",
|
||||
page: false,
|
||||
limit: 0,
|
||||
headers: {
|
||||
'token': layui.data(setter.tableName)[setter.request.tokenName]
|
||||
},
|
||||
treeNode:true,
|
||||
cols: [
|
||||
[
|
||||
{
|
||||
field: "name",
|
||||
title: "名称"
|
||||
}, {
|
||||
field: "order",
|
||||
title: "序号"
|
||||
}, {
|
||||
title: "操作",
|
||||
width: 300,
|
||||
align: "center",
|
||||
fixed: "right",
|
||||
toolbar: "#table-role-admin"
|
||||
}]
|
||||
],
|
||||
text: "对不起,加载出现异常!"
|
||||
}), l.on("tool(LAY-user-back-dic)", function (e) {
|
||||
var l = e.data;
|
||||
console.log(e.event)
|
||||
if ("del" === e.event) {
|
||||
layer.confirm("确定删除此菜单?", function (i) {
|
||||
//提交数据
|
||||
admin.req({
|
||||
method: "get",
|
||||
url: setter.baseurl + "adminapi/System/dic/delete?id=" + e.data.id,//实际使用请改成服务端真实接口
|
||||
async: true,
|
||||
done: function (res) {
|
||||
|
||||
e.del(), layer.close(i)
|
||||
}
|
||||
})
|
||||
|
||||
})
|
||||
}
|
||||
if ("edit" === e.event) {
|
||||
i.popup({
|
||||
title: "编辑菜单",
|
||||
area: ["500px", "480px"],
|
||||
id: "LAY-popup-user-add",
|
||||
success: function (e, i) {
|
||||
t(this.id).render("user/administrators/dicform", l).done(function () {
|
||||
r.render(null, "layuiadmin-form-dic"), r.on("submit(LAY-user-dic-submit)", function (e) {
|
||||
|
||||
var param = e.field;
|
||||
param.dicid
|
||||
//提交数据
|
||||
admin.req({
|
||||
method: "post",
|
||||
contentType: "application/json;charset=UTF-8",
|
||||
dataType: "json",
|
||||
headers: {
|
||||
'token': layui.data(setter.tableName)[setter.request.tokenName]
|
||||
},
|
||||
url: setter.baseurl + "adminapi/System/dic/update",//实际使用请改成服务端真实接口
|
||||
async: false,
|
||||
data: JSON.stringify(param),
|
||||
done: function (res) {
|
||||
|
||||
layui.table.reload("LAY-user-back-dic"), layer.close(i)
|
||||
}
|
||||
})
|
||||
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
}), e("dic", {})
|
||||
});
|
||||
@@ -0,0 +1,93 @@
|
||||
|
||||
layui.define(["table", "admin", "form", 'user', 'tree'], function (e) {
|
||||
var i = (layui.$, layui.admin),
|
||||
$ = layui.$,
|
||||
t = layui.view,
|
||||
l = layui.treeTable,
|
||||
r = layui.form,
|
||||
tree = layui.tree,
|
||||
admin = layui.admin,
|
||||
setter = layui.setter;
|
||||
var treedata = [];
|
||||
//提交数据
|
||||
|
||||
l.render({
|
||||
elem: "#LAY-user-back-nav",
|
||||
url: setter.baseurl + "adminapi/System/nav/list",
|
||||
method: "get",
|
||||
page: false,
|
||||
limit: 0,
|
||||
headers: {
|
||||
'token': layui.data(setter.tableName)[setter.request.tokenName]
|
||||
},
|
||||
treeNode:true,
|
||||
cols: [
|
||||
[
|
||||
{
|
||||
field: "name",
|
||||
title: "名称"
|
||||
}, {
|
||||
field: "order",
|
||||
title: "序号"
|
||||
}, {
|
||||
title: "操作",
|
||||
width: 300,
|
||||
align: "center",
|
||||
fixed: "right",
|
||||
toolbar: "#table-role-admin"
|
||||
}]
|
||||
],
|
||||
text: "对不起,加载出现异常!"
|
||||
}), l.on("tool(LAY-user-back-nav)", function (e) {
|
||||
var l = e.data;
|
||||
console.log(e.event)
|
||||
if ("del" === e.event) {
|
||||
layer.confirm("确定删除此菜单?", function (i) {
|
||||
//提交数据
|
||||
admin.req({
|
||||
method: "get",
|
||||
url: setter.baseurl + "adminapi/System/nav/delete?id=" + e.data.id,//实际使用请改成服务端真实接口
|
||||
async: true,
|
||||
done: function (res) {
|
||||
|
||||
e.del(), layer.close(i)
|
||||
}
|
||||
})
|
||||
|
||||
})
|
||||
}
|
||||
if ("edit" === e.event) {
|
||||
i.popup({
|
||||
title: "编辑菜单",
|
||||
area: ["500px", "480px"],
|
||||
id: "LAY-popup-user-add",
|
||||
success: function (e, i) {
|
||||
t(this.id).render("user/administrators/navform", l).done(function () {
|
||||
r.render(null, "layuiadmin-form-nav"), r.on("submit(LAY-user-nav-submit)", function (e) {
|
||||
|
||||
var param = e.field;
|
||||
param.navid
|
||||
//提交数据
|
||||
admin.req({
|
||||
method: "post",
|
||||
contentType: "application/json;charset=UTF-8",
|
||||
dataType: "json",
|
||||
headers: {
|
||||
'token': layui.data(setter.tableName)[setter.request.tokenName]
|
||||
},
|
||||
url: setter.baseurl + "adminapi/System/nav/update",//实际使用请改成服务端真实接口
|
||||
async: false,
|
||||
data: JSON.stringify(param),
|
||||
done: function (res) {
|
||||
|
||||
layui.table.reload("LAY-user-back-nav"), layer.close(i)
|
||||
}
|
||||
})
|
||||
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
}), e("nav", {})
|
||||
});
|
||||
@@ -0,0 +1,175 @@
|
||||
|
||||
layui.define(["table", "admin", "form"], function (e) {
|
||||
var i = (layui.$, layui.admin),
|
||||
$ = layui.$,
|
||||
t = layui.view,
|
||||
l = layui.table,
|
||||
r = layui.form,
|
||||
|
||||
admin = layui.admin,
|
||||
setter = layui.setter;
|
||||
|
||||
//提交数据
|
||||
console.log(setter);
|
||||
l.render({
|
||||
elem: "#LAY-user-back-manage",
|
||||
url: setter.baseurl + "adminapi/Mall/GetAllProductList",
|
||||
method: "get",
|
||||
headers: {
|
||||
'token': layui.data(setter.tableName)[setter.request.tokenName]
|
||||
},
|
||||
|
||||
cols: [
|
||||
[
|
||||
{
|
||||
field: "number",
|
||||
title: "编号",
|
||||
templet: function (d) {
|
||||
return d.productInfo?.number??"";
|
||||
}
|
||||
},
|
||||
{
|
||||
field: "name",
|
||||
title: "名称",
|
||||
}, {
|
||||
field: "productName",
|
||||
title: "产品名称",
|
||||
templet: function (d) {
|
||||
|
||||
return d.productInfo?.name ?? "";
|
||||
}
|
||||
},
|
||||
{
|
||||
field: "saleInfo",
|
||||
title: "售价信息",
|
||||
templet: function (d) {
|
||||
// 1 钻石 2 房卡 4 金币 5 道具
|
||||
var tempName = "";
|
||||
if (d.moneySaleInfo != null && d.moneySaleInfo.price > 0) {
|
||||
tempName += d.moneySaleInfo.price + "元 " + (d.moneySaleInfo.limitCount == 0 ? "不限购" : " 限购"+d.moneySaleInfo.limitCount + "个 </br>");
|
||||
}
|
||||
|
||||
|
||||
if (d.diamondSaleInfo != null && d.diamondSaleInfo.price > 0) {
|
||||
tempName += (d.diamondSaleInfo.price + "钻石 " + (d.diamondSaleInfo.limitCount == 0 ? "不限购" : "限购"+d.diamondSaleInfo.limitCount + "个</br>"));
|
||||
}
|
||||
|
||||
if (d.scoreSaleInfo != null && d.scoreSaleInfo.price > 0) {
|
||||
tempName += d.scoreSaleInfo.price + "积分" + (d.scoreSaleInfo.limitCount == 0 ? "不限购" : "限购"+d.scoreSaleInfo.limitCount + "个");
|
||||
}
|
||||
|
||||
return tempName
|
||||
}
|
||||
|
||||
}, {
|
||||
field: "state",
|
||||
title: "状态",
|
||||
templet: function (d) {
|
||||
if (d.state == 0)
|
||||
return "下架";
|
||||
else
|
||||
return "上架"
|
||||
}
|
||||
}, {
|
||||
title: "操作",
|
||||
align: "center",
|
||||
fixed: "right",
|
||||
toolbar: "#table-product-admin"
|
||||
}]
|
||||
],
|
||||
text: "对不起,加载出现异常!",
|
||||
response: {
|
||||
statusName: 'code', //数据状态的字段名称,默认:code
|
||||
statusCode: 0, //成功的状态码,默认:0
|
||||
msgName: 'info', //状态信息的字段名称,默认:msg
|
||||
countName: 'count', //数据总数的字段名称,默认:count
|
||||
dataName: 'data' //数据列表的字段名称,默认:data
|
||||
}
|
||||
}),
|
||||
|
||||
l.on("tool(LAY-user-back-manage)", function (e) {
|
||||
var l = e.data;
|
||||
|
||||
if ("del" === e.event) {
|
||||
layer.confirm("确定删除此产品?", function (i) {
|
||||
//提交数据
|
||||
admin.req({
|
||||
method: "get",
|
||||
url: setter.baseurl + "adminapi/Mall/DeleteProduct?id=" + e.data.id,//实际使用请改成服务端真实接口
|
||||
async: true,
|
||||
done: function (res) {
|
||||
|
||||
e.del(), layer.close(i)
|
||||
}
|
||||
})
|
||||
|
||||
})
|
||||
}
|
||||
if ("state" === e.event) {
|
||||
|
||||
admin.req({
|
||||
method: "get",
|
||||
url: setter.baseurl + "adminapi/Mall/UpdateProductState?id=" + e.data.id + "&state=" + (e.data.state == 0 ? 1 : 0),//实际使用请改成服务端真实接口
|
||||
async: true,
|
||||
done: function (res) {
|
||||
layer.msg("操作成功");
|
||||
layui.table.reload("LAY-user-back-manage");
|
||||
}
|
||||
})
|
||||
}
|
||||
if ("edit" === e.event) {
|
||||
i.popup({
|
||||
title: "编辑产品",
|
||||
area: ["500px", "600px"],
|
||||
id: "LAY-popup-product-add",
|
||||
success: function (e, i) {
|
||||
t(this.id).render("mall/productform", l).done(function () {
|
||||
|
||||
r.render(null, "layuiadmin-form-admin"), r.on("submit(LAY-product-back-submit)", function (data) {
|
||||
|
||||
console.log(data)
|
||||
var param = {
|
||||
id: data.field.id,
|
||||
name: data.field.name,
|
||||
imageUrl: data.field.imageUrl,
|
||||
detailType: parseInt(data.field.detailType),
|
||||
|
||||
number: data.field.baseProduct
|
||||
|
||||
};
|
||||
|
||||
param.moneySaleInfo = { limitCount: data.field.moneyLimitCount, price: parseFloat(data.field.moneyPrice) }
|
||||
param.diamondSaleInfo = { limitCount: data.field.diamondLimitCount, price: parseFloat(data.field.diamondPrice) }
|
||||
param.scoreSaleInfo = { limitCount: data.field.scoreLimitCount, price: parseFloat(data.field.scorePrice) }
|
||||
|
||||
//提交数据
|
||||
admin.req({
|
||||
method: "post",
|
||||
contentType: "application/json;charset=UTF-8",
|
||||
dataType: "json",
|
||||
headers: {
|
||||
'token': layui.data(setter.tableName)[setter.request.tokenName]
|
||||
},
|
||||
url: setter.baseurl + "adminapi/mall/UpdateProduct",//实际使用请改成服务端真实接口
|
||||
async: false,
|
||||
data: JSON.stringify(param),
|
||||
done: function (res) {
|
||||
|
||||
layui.table.reload("LAY-user-back-manage"), layer.close(i)
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}), e("productlistjs", {})
|
||||
});
|
||||
@@ -0,0 +1,33 @@
|
||||
/** layuiAdmin.pro-v1.4.0 LPPL License By https://www.layui.com/admin/ */;
|
||||
layui.define(["form", "upload"], function (t) {
|
||||
var i = layui.$,
|
||||
e = layui.layer,
|
||||
n = (layui.laytpl, layui.setter, layui.view, layui.admin),
|
||||
a = layui.form,
|
||||
s = layui.upload;
|
||||
i("body");
|
||||
a.render(), a.verify({
|
||||
nickname: function (t, i) {
|
||||
return new RegExp("^[a-zA-Z0-9_一-龥\\s·]+$").test(t) ? /(^\_)|(\__)|(\_+$)/.test(t) ? "用户名首尾不能出现下划线'_'" : /^\d+\d+\d$/.test(t) ? "用户名不能全为数字" : void 0 : "用户名不能有特殊字符"
|
||||
},
|
||||
pass: [/^[\S]{6,12}$/, "密码必须6到12位,且不能出现空格"],
|
||||
repass: function (t) {
|
||||
if (t !== i("#LAY_password").val()) return "两次密码输入不一致"
|
||||
}
|
||||
});
|
||||
|
||||
a.on("submit(setmypass)", function (t) {
|
||||
|
||||
admin.req({
|
||||
method: "get",
|
||||
url: setter.baseurl + "adminapi/System/user/delete?id=" + e.data.id,//实际使用请改成服务端真实接口
|
||||
async: true,
|
||||
done: function (res) {
|
||||
|
||||
return e.msg("修改成功"), !1
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
}), t("set", {})
|
||||
});
|
||||
@@ -0,0 +1,175 @@
|
||||
|
||||
layui.define(["table", "admin", "form", 'user', 'tree'], function (e) {
|
||||
var i = (layui.$, layui.admin),
|
||||
$ = layui.$,
|
||||
t = layui.view,
|
||||
l = layui.table,
|
||||
r = layui.form,
|
||||
|
||||
admin = layui.admin,
|
||||
setter = layui.setter;
|
||||
//提交数据
|
||||
|
||||
l.render({
|
||||
elem: "#LAY-task-back-manage",
|
||||
url: setter.baseurl + "adminapi/task/GetTaskList",
|
||||
method: "post",
|
||||
contentType: "application/json",
|
||||
page: true,
|
||||
where: {
|
||||
keyWord: "",
|
||||
state: -1
|
||||
},
|
||||
request: {
|
||||
pageName: 'pageIndex' //页码的参数名称,默认:page
|
||||
, limitName: 'pageSize' //每页数据量的参数名,默认:limit
|
||||
},
|
||||
limit: 10,
|
||||
headers: {
|
||||
'token': layui.data(setter.tableName)[setter.request.tokenName]
|
||||
},
|
||||
cols: [
|
||||
[
|
||||
{
|
||||
field: "number",
|
||||
title: "任务编号",
|
||||
}, {
|
||||
field: "remark",
|
||||
title: "任务描述"
|
||||
}, {
|
||||
field: "taskType",
|
||||
title: "任务类型",
|
||||
templet: function (d) {
|
||||
if (d.taskType == 1)
|
||||
return "每日任务";
|
||||
|
||||
if (d.taskType == 2)
|
||||
return "在线时长任务";
|
||||
}
|
||||
}, {
|
||||
field: "taskEvent",
|
||||
title: "事件",
|
||||
templet: function (d) {
|
||||
var tem = "";
|
||||
switch (d.taskEvent) {
|
||||
case 1: tem = "整点在线奖励"; break;
|
||||
case 2: tem = "在线时长";break;
|
||||
case 3: tem = "捕获任意鱼";break;
|
||||
case 4: tem = "捕获黄金鱼";break;
|
||||
case 5: tem = "捕获Boss鱼"; break;
|
||||
case 6: tem = "赢取金币"; break;
|
||||
case 7: tem = "使用狂暴"; break;
|
||||
case 8: tem = "开炮任务"; break;
|
||||
case 9: tem = "登录任务"; break;
|
||||
case 10: tem = "充值任务"; break;
|
||||
default:tem = "未知";break;
|
||||
}
|
||||
|
||||
return tem;
|
||||
}
|
||||
}, {
|
||||
field: "taskCount",
|
||||
title: "任务条件"
|
||||
}
|
||||
, {
|
||||
field: "exp",
|
||||
title: "战令经验"
|
||||
}
|
||||
, {
|
||||
field: "state",
|
||||
title: "状态",
|
||||
templet: function (d) {
|
||||
if (d.state == 1)
|
||||
return "启用";
|
||||
else
|
||||
return "禁用"
|
||||
}
|
||||
}
|
||||
, {
|
||||
width: 240,
|
||||
title: "操作",
|
||||
align: "center",
|
||||
fixed: "right",
|
||||
toolbar: "#table-taskadmin-admin"
|
||||
}]
|
||||
],
|
||||
text: "对不起,加载出现异常!",
|
||||
response: {
|
||||
statusName: 'code', //数据状态的字段名称,默认:code
|
||||
statusCode: 0, //成功的状态码,默认:0
|
||||
msgName: 'info', //状态信息的字段名称,默认:msg
|
||||
countName: 'count', //数据总数的字段名称,默认:count
|
||||
dataName: 'data' //数据列表的字段名称,默认:data
|
||||
}
|
||||
}),
|
||||
|
||||
l.on("tool(LAY-task-back-manage)", function (e) {
|
||||
var l = e.data;
|
||||
console.log(e.event)
|
||||
if ("del" === e.event) {
|
||||
layer.confirm("确定删除此任务?", function (i) {
|
||||
//提交数据
|
||||
admin.req({
|
||||
method: "get",
|
||||
url: setter.baseurl + "adminapi/task/DeleteTask?id=" + e.data.id,//实际使用请改成服务端真实接口
|
||||
async: true,
|
||||
done: function (res) {
|
||||
|
||||
e.del(), layer.close(i)
|
||||
}
|
||||
})
|
||||
|
||||
})
|
||||
}
|
||||
|
||||
if ("state" === e.event) {
|
||||
|
||||
admin.req({
|
||||
method: "get",
|
||||
url: setter.baseurl + "adminapi/Task/UpdateTaskState?id=" + e.data.id + "&state=" + (e.data.state == 1 ? 2 :1),//实际使用请改成服务端真实接口
|
||||
async: true,
|
||||
done: function (res) {
|
||||
layer.msg("操作成功");
|
||||
layui.table.reload("LAY-task-back-manage");
|
||||
}
|
||||
})
|
||||
}
|
||||
if ("edit" === e.event) {
|
||||
i.popup({
|
||||
title: "编辑任务",
|
||||
area: ["500px", "600px"],
|
||||
id: "LAY-popup-user-add",
|
||||
success: function (e, i) {
|
||||
t(this.id).render("config/taskform", l).done(function () {
|
||||
|
||||
r.render(null, "layuiadmin-form-admin"), r.on("submit(LAY-user-back-submit)", function (e) {
|
||||
|
||||
console.log(e.field)
|
||||
|
||||
//提交数据
|
||||
admin.req({
|
||||
method: "post",
|
||||
contentType: "application/json;charset=UTF-8",
|
||||
dataType: "json",
|
||||
headers: {
|
||||
'token': layui.data(setter.tableName)[setter.request.tokenName]
|
||||
},
|
||||
url: setter.baseurl + "adminapi/task/AddTask",//实际使用请改成服务端真实接口
|
||||
async: false,
|
||||
data: JSON.stringify(e.field),
|
||||
done: function (res) {
|
||||
|
||||
layui.table.reload("LAY-task-back-manage"), layer.close(i)
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
}), e("task", {})
|
||||
});
|
||||
@@ -0,0 +1,15 @@
|
||||
/** layuiAdmin.pro-v1.4.0 LPPL License By https://www.layui.com/admin/ */;
|
||||
layui.define("form", function (e) {
|
||||
var t = layui.$,
|
||||
i = (layui.layer, layui.laytpl, layui.setter, layui.view, layui.admin, layui.form),
|
||||
a = t("body");
|
||||
i.verify({
|
||||
nickname: function (e, t) {
|
||||
return new RegExp("^[a-zA-Z0-9_一-龥\\s·]+$").test(e) ? /(^\_)|(\__)|(\_+$)/.test(e) ? "用户名首尾不能出现下划线'_'" : /^\d+\d+\d$/.test(e) ? "用户名不能全为数字" : void 0 : "用户名不能有特殊字符"
|
||||
},
|
||||
pass: [/^[\S]{6,12}$/, "密码必须6到12位,且不能出现空格"]
|
||||
}), a.on("click", "#LAY-user-get-vercode", function () {
|
||||
t(this);
|
||||
this.src = "https://www.oschina.net/action/user/captcha?t=" + (new Date).getTime()
|
||||
}), e("user", {})
|
||||
});
|
||||
@@ -0,0 +1,243 @@
|
||||
|
||||
layui.define(["table", "admin", "form", 'user', 'tree'], function (e) {
|
||||
var i = (layui.$, layui.admin),
|
||||
$ = layui.$,
|
||||
t = layui.view,
|
||||
l = layui.table,
|
||||
r = layui.form,
|
||||
tree = layui.tree,
|
||||
admin = layui.admin,
|
||||
setter = layui.setter;
|
||||
var treedata = [];
|
||||
//提交数据
|
||||
|
||||
l.render({
|
||||
elem: "#LAY-user-back-manage",
|
||||
url: setter.baseurl + "adminapi/System/user/list",
|
||||
method: "post",
|
||||
contentType: "application/json",
|
||||
page: true,
|
||||
where: {
|
||||
keyWord: "",
|
||||
state: -1
|
||||
},
|
||||
request: {
|
||||
pageName: 'pageIndex' //页码的参数名称,默认:page
|
||||
, limitName: 'pageSize' //每页数据量的参数名,默认:limit
|
||||
},
|
||||
limit: 10,
|
||||
headers: {
|
||||
'token': layui.data(setter.tableName)[setter.request.tokenName]
|
||||
},
|
||||
cols: [
|
||||
[
|
||||
{
|
||||
field: "userName",
|
||||
title: "用户名",
|
||||
}, {
|
||||
field: "icon",
|
||||
title: "头像",
|
||||
templet: function (d) {
|
||||
if (d.icon == null || d.icon == "")
|
||||
return "";
|
||||
return "<image src='"+d.icon+"'>"
|
||||
}
|
||||
}, {
|
||||
field: "displayName",
|
||||
title: "名字"
|
||||
}, {
|
||||
field: "state",
|
||||
title: "状态",
|
||||
templet: function (d) {
|
||||
if (d.state == 0)
|
||||
return "禁用";
|
||||
else
|
||||
return "正常"
|
||||
}
|
||||
}, {
|
||||
field: "systemRole",
|
||||
title: "角色",
|
||||
templet: function (d) {
|
||||
if (d.systemRole == null)
|
||||
return "未选择"
|
||||
return d.systemRole.name
|
||||
}
|
||||
}, {
|
||||
field: "registerTime",
|
||||
title: "加入时间",
|
||||
sort: !0
|
||||
}, {
|
||||
title: "操作",
|
||||
align: "center",
|
||||
fixed: "right",
|
||||
toolbar: "#table-useradmin-admin"
|
||||
}]
|
||||
],
|
||||
text: "对不起,加载出现异常!",
|
||||
response: {
|
||||
statusName: 'code', //数据状态的字段名称,默认:code
|
||||
statusCode: 0, //成功的状态码,默认:0
|
||||
msgName: 'info', //状态信息的字段名称,默认:msg
|
||||
countName: 'count', //数据总数的字段名称,默认:count
|
||||
dataName: 'data' //数据列表的字段名称,默认:data
|
||||
}
|
||||
}),
|
||||
|
||||
l.on("tool(LAY-user-back-manage)", function (e) {
|
||||
var l = e.data;
|
||||
console.log(e.event)
|
||||
if ("del" === e.event) {
|
||||
layer.confirm("确定删除此管理员?", function (i) {
|
||||
//提交数据
|
||||
admin.req({
|
||||
method: "get",
|
||||
url: setter.baseurl + "adminapi/System/user/delete?id=" + e.data.id,//实际使用请改成服务端真实接口
|
||||
async: true,
|
||||
done: function (res) {
|
||||
|
||||
e.del(), layer.close(i)
|
||||
}
|
||||
})
|
||||
|
||||
})
|
||||
}
|
||||
if ("edit" === e.event) {
|
||||
i.popup({
|
||||
title: "编辑管理员",
|
||||
area: ["500px", "600px"],
|
||||
id: "LAY-popup-user-add",
|
||||
success: function (e, i) {
|
||||
t(this.id).render("user/administrators/adminform", l).done(function () {
|
||||
|
||||
r.render(null, "layuiadmin-form-admin"), r.on("submit(LAY-user-back-submit)", function (e) {
|
||||
|
||||
var param = {
|
||||
id: e.field.id,
|
||||
userName: e.field.userName,
|
||||
displayName: e.field.displayName,
|
||||
icon: e.field.icon,
|
||||
password: e.field.password,
|
||||
systemRole: {
|
||||
id: e.field.systemRole,
|
||||
name: $('#systemRole option:selected').text()
|
||||
}
|
||||
};
|
||||
|
||||
//提交数据
|
||||
admin.req({
|
||||
method: "post",
|
||||
contentType: "application/json;charset=UTF-8",
|
||||
dataType: "json",
|
||||
headers: {
|
||||
'token': layui.data(setter.tableName)[setter.request.tokenName]
|
||||
},
|
||||
url: setter.baseurl + "adminapi/System/user/update",//实际使用请改成服务端真实接口
|
||||
async: false,
|
||||
data: JSON.stringify(param),
|
||||
done: function (res) {
|
||||
|
||||
layui.table.reload("LAY-user-back-manage"), layer.close(i)
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
}), l.render({
|
||||
elem: "#LAY-user-back-role",
|
||||
url: setter.baseurl + "adminapi/System/role/list",
|
||||
method: "get",
|
||||
page: false,
|
||||
limit: 0,
|
||||
headers: {
|
||||
'token': layui.data(setter.tableName)[setter.request.tokenName]
|
||||
},
|
||||
cols: [
|
||||
[
|
||||
{
|
||||
field: "roleName",
|
||||
title: "角色名"
|
||||
}, {
|
||||
field: "description",
|
||||
title: "具体描述"
|
||||
}, {
|
||||
title: "操作",
|
||||
width: 300,
|
||||
align: "center",
|
||||
fixed: "right",
|
||||
toolbar: "#table-useradmin-admin"
|
||||
}]
|
||||
],
|
||||
text: "对不起,加载出现异常!"
|
||||
}), l.on("tool(LAY-user-back-role)", function (e) {
|
||||
var l = e.data;
|
||||
console.log(e.event)
|
||||
if ("del" === e.event) {
|
||||
layer.confirm("确定删除此角色?", function (i) {
|
||||
//提交数据
|
||||
admin.req({
|
||||
method: "get",
|
||||
url: setter.baseurl + "adminapi/System/role/delete?id=" + e.data.id,//实际使用请改成服务端真实接口
|
||||
async: true,
|
||||
done: function (res) {
|
||||
|
||||
e.del(), layer.close(i)
|
||||
}
|
||||
})
|
||||
|
||||
})
|
||||
}
|
||||
if ("edit" === e.event) {
|
||||
i.popup({
|
||||
title: "编辑角色",
|
||||
area: ["500px", "480px"],
|
||||
id: "LAY-popup-user-add",
|
||||
success: function (e, i) {
|
||||
t(this.id).render("user/administrators/roleform", l).done(function () {
|
||||
r.render(null, "layuiadmin-form-role"), r.on("submit(LAY-user-role-submit)", function (e) {
|
||||
|
||||
var param = e.field;
|
||||
param.navid
|
||||
//提交数据
|
||||
admin.req({
|
||||
method: "post",
|
||||
contentType: "application/json;charset=UTF-8",
|
||||
dataType: "json",
|
||||
headers: {
|
||||
'token': layui.data(setter.tableName)[setter.request.tokenName]
|
||||
},
|
||||
url: setter.baseurl + "adminapi/System/role/update",//实际使用请改成服务端真实接口
|
||||
async: false,
|
||||
data: JSON.stringify(param),
|
||||
done: function (res) {
|
||||
|
||||
layui.table.reload("LAY-user-back-role"), layer.close(i)
|
||||
}
|
||||
})
|
||||
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
if ("role" === e.event) {
|
||||
i.popup({
|
||||
title: "编辑权限",
|
||||
area: ["500px", "600px"],
|
||||
id: "LAY-popup-user-tree-add",
|
||||
success: function (e, i) {
|
||||
t(this.id).render("user/administrators/roletree", l).done(function () {
|
||||
|
||||
|
||||
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
}), e("useradmin", {})
|
||||
});
|
||||
Reference in New Issue
Block a user