增加调试代码

This commit is contained in:
BianLzhaoMin 2025-05-20 16:19:38 +08:00
parent febef7d242
commit 58c30a7c47
9 changed files with 733 additions and 681 deletions

105
js/jq.js
View File

@ -1,51 +1,70 @@
var pagesPathNew = getContextPathNew();
function getContextPathNew() {
var pathName = document.location.pathname;
var index = pathName.substr(1).indexOf("/");
var result = pathName.substr(0, index + 1);
return result;
}
$.ajaxSetup({
cache : false,
headers : {
"token" : localStorage.getItem("token")
},
error : function(xhr, textStatus, errorThrown) {
var msg = xhr.responseText;
var response = JSON.parse(msg);
var code = response.code;
var message = response.message;
if (code == 400) {
layer.msg(message);
} else if (code == 401) {
localStorage.removeItem("token");
location.href = '/hnbcbackstage/login.html';
} else if (code == 403) {
console.log("未授权:" + message);
layer.msg('未授权');
} else if (code == 500) {
layer.msg('系统错误:' + message);
}
}
cache: false,
headers: {
token: localStorage.getItem("token"),
},
error: function (xhr, textStatus, errorThrown) {
var msg = xhr.responseText;
var response = JSON.parse(msg);
var code = response.code;
var message = response.message;
if (code == 400) {
layer.msg(message);
} else if (code == 401) {
localStorage.removeItem("token");
// location.href = "/hnbcbackstage/login.html";
location.href = pagesPathNew + "/login.html";
} else if (code == 403) {
console.log("未授权:" + message);
layer.msg("未授权");
} else if (code == 500) {
layer.msg("系统错误:" + message);
}
},
});
function buttonDel(data, permission, pers){
if(permission != ""){
if ($.inArray(permission, pers) < 0) {
return "";
}
}
var btn = $("<button class='layui-btn layui-btn-xs' title='删除' onclick='del(\"" + data +"\")'><i class='layui-icon'>&#xe640;</i></button>");
return btn.prop("outerHTML");
function buttonDel(data, permission, pers) {
if (permission != "") {
if ($.inArray(permission, pers) < 0) {
return "";
}
}
var btn = $(
"<button class='layui-btn layui-btn-xs' title='删除' onclick='del(\"" +
data +
"\")'><i class='layui-icon'>&#xe640;</i></button>"
);
return btn.prop("outerHTML");
}
function buttonEdit(href, permission, pers){
if(permission != ""){
if ($.inArray(permission, pers) < 0) {
return "";
}
}
var btn = $("<button class='layui-btn layui-btn-xs' title='编辑' onclick='window.location=\"" + href +"\"'><i class='layui-icon'>&#xe642;</i></button>");
return btn.prop("outerHTML");
function buttonEdit(href, permission, pers) {
if (permission != "") {
if ($.inArray(permission, pers) < 0) {
return "";
}
}
var btn = $(
"<button class='layui-btn layui-btn-xs' title='编辑' onclick='window.location=\"" +
href +
"\"'><i class='layui-icon'>&#xe642;</i></button>"
);
return btn.prop("outerHTML");
}
function deleteCurrentTab(){
var lay_id = $(parent.document).find("ul.layui-tab-title").children("li.layui-this").attr("lay-id");
parent.active.tabDelete(lay_id);
function deleteCurrentTab() {
var lay_id = $(parent.document)
.find("ul.layui-tab-title")
.children("li.layui-this")
.attr("lay-id");
parent.active.tabDelete(lay_id);
}

View File

@ -6,7 +6,8 @@ function initMenu() {
async: false,
success: function (data) {
if (!$.isArray(data)) {
location.href = ctxPath + "/login.html";
// location.href = ctxPath + "/login.html";
location.href = pagesPath + "/login.html";
return;
}
var menu = $("#menu");
@ -109,7 +110,8 @@ function logout() {
url: ctxPath + "/logout",
success: function (data) {
localStorage.removeItem("token");
location.href = ctxPath + "/login.html";
// location.href = ctxPath + "/login.html";
location.href = pagesPath + "/login.html";
},
});
}

View File

@ -1,150 +1,159 @@
var startWorkFiles = {};
var table
var form
var upload
var table;
var form;
var upload;
var example = null;
var pers = null;
// 设置全局变量以保存选中行信息
let ids = new Array();
$(function () {
layui.use(['layer','form','table','upload'], function () {
layui.use(["layer", "form", "table", "upload"], function () {
var layer = layui.layer;
form = layui.form;
table = layui.table;
upload = layui.upload;
init(table,form,'');
init(table, form, "");
var uploadIns = upload.render({
elem: '#importBt', //绑定元素
elem: "#importBt", //绑定元素
url: ctxPath + "/ma/sendoff/import",
accept: 'file', //允许上传的文件类型
exts: 'xlsx|xls',
auto: true, //是否自动上传
multiple: false, //是否支持多文件上传
choose: function(obj){ //选择文件后的回调函数
accept: "file", //允许上传的文件类型
exts: "xlsx|xls",
auto: true, //是否自动上传
multiple: false, //是否支持多文件上传
choose: function (obj) {
//选择文件后的回调函数
},
before:function(){
layer.msg('数据导入中,请稍等。。。', {
icon: 4
before: function () {
layer.msg("数据导入中,请稍等。。。", {
icon: 4,
});
this.data = {
"fileType": "sendoff"
fileType: "sendoff",
};
},
done: function(res, index, upload){ //上传完毕的回调函数
done: function (res, index, upload) {
//上传完毕的回调函数
layer.closeAll("loading");
if (res.code == 200){
layer.msg('导入成功', {icon: 1, time: 2000},function () {
table.reload('layuiTable');
if (res.code == 200) {
layer.msg("导入成功", { icon: 1, time: 2000 }, function () {
table.reload("layuiTable");
});
} else {
layer.msg(res.msg,{icon:2})
layer.msg(res.msg, { icon: 2 });
}
}
,error: function(){
},
error: function () {
layer.closeAll("loading");
console.log("请求异常回调");
}
},
});
$("#searchBt").click(function () {
var keyWord = $("#keyWord").val();
// var title = $("#title").val();
init(table,form,keyWord)
init(table, form, keyWord);
});
$("#resetBt").click(function () {
var keyWord = ''
var keyWord = "";
$("#keyWord").val("");
// $("#title").val("");
layui.form.render('select');
init(table,form,keyWord)
layui.form.render("select");
init(table, form, keyWord);
});
});
pers = checkPermission();
})
});
function init(table,form,keyWord) {
function init(table, form, keyWord) {
table.render({
elem: '#layuiTable'
,url: ctxPath + "/ma/sendoff/list?keyWord="+keyWord
,method:'post'
,cols: [[
{type: 'checkbox', fixed: 'left'}
, { field: 'ID', title: '序号',width:'3%', sort: true, type:'numbers'}
, { field: 'cxPzTime', title: '冲销凭证日期',align:'center'}
, { field: 'cxPzCode', title: '冲销凭证号',align:'center'}
, { field: 'maCode', title: '物料号',align:'center'}
, { field: 'maName', title: '物料名称',align:'center'}
, { field: 'fhPzCode', title: '发货凭证号',align:'center'}
, {field:'right', title: '操作',toolbar:"#barDemo",align:'center'}
]]
,limits: [5,10,20,50,100,500] //一页选择显示3,5或10条数据
, limit: 10 //一页显示5条数据
, response: {
statusCode: 200 //规定成功的状态码默认0
}
, parseData: function (res) { //将原始数据解析成 table 组件所规定的数据res为从url中get到的数据
elem: "#layuiTable",
url: ctxPath + "/ma/sendoff/list?keyWord=" + keyWord,
method: "post",
cols: [
[
{ type: "checkbox", fixed: "left" },
{
field: "ID",
title: "序号",
width: "3%",
sort: true,
type: "numbers",
},
{ field: "cxPzTime", title: "冲销凭证日期", align: "center" },
{ field: "cxPzCode", title: "冲销凭证号", align: "center" },
{ field: "maCode", title: "物料号", align: "center" },
{ field: "maName", title: "物料名称", align: "center" },
{ field: "fhPzCode", title: "发货凭证号", align: "center" },
{
field: "right",
title: "操作",
toolbar: "#barDemo",
align: "center",
},
],
],
limits: [5, 10, 20, 50, 100, 500], //一页选择显示3,5或10条数据
limit: 10, //一页显示5条数据
response: {
statusCode: 200, //规定成功的状态码默认0
},
parseData: function (res) {
//将原始数据解析成 table 组件所规定的数据res为从url中get到的数据
let result;
if (res.count > 0) {
if (this.page.curr) {
result = res.data.slice(this.limit * (this.page.curr - 1), this.limit * this.page.curr);
result = res.data.slice(
this.limit * (this.page.curr - 1),
this.limit * this.page.curr
);
} else {
result = res.data.slice(0, this.limit);
}
}
return {
"code": res.code, //解析接口状态
"msg": res.msg, //解析提示文本
"count": res.count, //解析数据长度
"data": result //解析数据列表
code: res.code, //解析接口状态
msg: res.msg, //解析提示文本
count: res.count, //解析数据长度
data: result, //解析数据列表
};
}
,id: 'layuiTable'
,page: true //开启分页
,height: 600
},
id: "layuiTable",
page: true, //开启分页
height: 600,
});
table.on('tool(contact)', function(obj){
table.on("tool(contact)", function (obj) {
var data = obj.data;
if(obj.event === 'del'){
if (obj.event === "del") {
del(data.id);
} else if(obj.event === 'edit'){
} else if (obj.event === "edit") {
edit(data.id);
}
});
}
/**
* 新增
*/
function add(){
localStorage.setItem('type','1')
function add() {
localStorage.setItem("type", "1");
var index = layer.open({
title: '新增',
title: "新增",
type: 2,
content: './child/sendoffAddForm.html',
area: ['80%', '70%'],
content: "./child/sendoffAddForm.html",
area: ["80%", "70%"],
maxmin: false,
btn:['确定 ','取消'],
yes:function(index,layero){
var formSubmit=layer.getChildFrame('form', index);
var submited = formSubmit.find('button')[0];
btn: ["确定 ", "取消"],
yes: function (index, layero) {
var formSubmit = layer.getChildFrame("form", index);
var submited = formSubmit.find("button")[0];
// 触发点击事件,会对表单进行验证,验证成功则提交表单,失败则返回错误信息
submited.click();
},
btn2:function(index,layero){
}
btn2: function (index, layero) {},
});
}
@ -152,137 +161,137 @@ function add(){
* 修改
* */
function edit(id) {
localStorage.setItem('type','2')
localStorage.setItem("type", "2");
$.ajax({
type: 'post',
url: ctxPath + '/ma/sendoff/getById',
type: "post",
url: ctxPath + "/ma/sendoff/getById",
data: {
"id":id
id: id,
},
dataType: 'text',
dataType: "text",
success: function (data) {
var height = '80%';
var width = '70%';
var height = "80%";
var width = "70%";
var index = layer.open({
title: '修改',
title: "修改",
type: 2,
content: './child/sendoffForm.html',
content: "./child/sendoffForm.html",
area: [width, height],
maxmin: false,
btn:['确定 ','取消'],
success:function(layero,index){
var myIframe = window[layero.find('iframe')[0]['name']];
btn: ["确定 ", "取消"],
success: function (layero, index) {
var myIframe = window[layero.find("iframe")[0]["name"]];
var fnc = myIframe.setData(data); //aaa()为子页面的方法
},
yes:function(index,layero){
var formSubmit=layer.getChildFrame('form', index);
var submited = formSubmit.find('button')[0];
yes: function (index, layero) {
var formSubmit = layer.getChildFrame("form", index);
var submited = formSubmit.find("button")[0];
// 触发点击事件,会对表单进行验证,验证成功则提交表单,失败则返回错误信息
submited.click();
},
btn2:function(index,layero){
}
btn2: function (index, layero) {},
});
}
})
},
});
}
/**
* 删除
* */
function del(id) {
layer.confirm("确定删除吗?",function () {
layer.confirm("确定删除吗?", function () {
$.ajax({
type: 'post',
url: ctxPath + '/ma/sendoff/delete',
type: "post",
url: ctxPath + "/ma/sendoff/delete",
data: {
"id":id
id: id,
},
success: function (data) {
if(data.code == 200){
layer.alert('删除成功', {icon: 1},()=>{
if (data.code == 200) {
layer.alert("删除成功", { icon: 1 }, () => {
location.reload();
});
}else{
layer.alert('删除失败', {icon: 2});
} else {
layer.alert("删除失败", { icon: 2 });
}
}
})
})
},
});
});
}
function getData(day){
var today=new Date()
var targetday=today.getTime() +1000*60*60*24* day
today.setTime(targetday)
var tYear=today.getFullYear()
var tMonth=today.getMonth()
var tDate=today.getDate()
tMonth=this.doHandMonth(tMonth+1)
tDate=this.doHandMonth(tDate)
return tYear +"-" + tMonth+"-"+tDate
function getData(day) {
var today = new Date();
var targetday = today.getTime() + 1000 * 60 * 60 * 24 * day;
today.setTime(targetday);
var tYear = today.getFullYear();
var tMonth = today.getMonth();
var tDate = today.getDate();
tMonth = this.doHandMonth(tMonth + 1);
tDate = this.doHandMonth(tDate);
return tYear + "-" + tMonth + "-" + tDate;
}
function doHandMonth(month){
var m=month
if(month.toString().length==1){
m="0"+month
function doHandMonth(month) {
var m = month;
if (month.toString().length == 1) {
m = "0" + month;
}
return m
return m;
}
function batchDeleteBtn(){
var selectData = layui.table.checkStatus('layuiTable').data;
function batchDeleteBtn() {
var selectData = layui.table.checkStatus("layuiTable").data;
console.log(selectData);
let ids = [];
for (let i = 0; i < selectData.length; i++){
ids.push(selectData[i].id)
for (let i = 0; i < selectData.length; i++) {
ids.push(selectData[i].id);
}
console.log(ids);
if(ids.toString() == ''){
return layer.alert('请选择需要删除的数据',{icon: 0});
}else{
layer.confirm("确定删除所选 "+ids.length+" 条数据吗?",function () {
$.ajax({
type: 'delete',
url: ctxPath + '/ma/sendoff/' + ids.toString(),
success: function (data) {
if(data.code == 200){
layer.msg('删除成功', {icon: 1},function () {
table.reload('layuiTable');
});
}else{
layer.alert('删除失败', {icon: 2});
}
}
})
})
if (ids.toString() == "") {
return layer.alert("请选择需要删除的数据", { icon: 0 });
} else {
layer.confirm(
"确定删除所选 " + ids.length + " 条数据吗?",
function () {
$.ajax({
type: "delete",
url: ctxPath + "/ma/sendoff/" + ids.toString(),
success: function (data) {
if (data.code == 200) {
layer.msg("删除成功", { icon: 1 }, function () {
table.reload("layuiTable");
});
} else {
layer.alert("删除失败", { icon: 2 });
}
},
});
}
);
}
}
function exportData() {
var index = layer.msg('数据导出中,请稍等。。。', {
icon: 4
var index = layer.msg("数据导出中,请稍等。。。", {
icon: 4,
});
var token = localStorage.getItem("token");
var djCode = $("#djCode").val();
var maCode = $("#maCode").val();
var param = {
djCode:djCode,
maCode:maCode
}
var url = ctxPath + "/ma/sendoff/export?param=" + encodeURIComponent(JSON.stringify(param));
djCode: djCode,
maCode: maCode,
};
var url =
ctxPath +
"/ma/sendoff/export?param=" +
encodeURIComponent(JSON.stringify(param));
var xhr = new XMLHttpRequest();
xhr.open("get", url, true);
//设置xhr请求的超时时间
xhr.timeout = 100000;
//设置响应返回的数据格式
xhr.responseType = "blob"; // 转换流
xhr.responseType = "blob"; // 转换流
xhr.setRequestHeader("token", token);
//构造表单数据
xhr.onload = function () {
@ -295,9 +304,14 @@ function exportData() {
a.download = "发货冲销对应表-导出.xlsx"; // 文件名
} else if (this.status === 401) {
localStorage.removeItem("token");
layer.msg('用户登录过期,请重新登录', {icon: 5, time: 2000}, function () {
location.href = ctxPath + '/login.html';
});
layer.msg(
"用户登录过期,请重新登录",
{ icon: 5, time: 2000 },
function () {
// location.href = ctxPath + '/login.html';
location.href = pagesPath + "/login.html";
}
);
}
a.click();
window.URL.revokeObjectURL(url);
@ -307,6 +321,8 @@ function exportData() {
function downloadFile() {
var token = localStorage.getItem("token");
window.location.href = ctxPath + "/download/download?filename=发货冲销对应表-导入模板.xlsx&token=" + token;
window.location.href =
ctxPath +
"/download/download?filename=发货冲销对应表-导入模板.xlsx&token=" +
token;
}

View File

@ -1,9 +1,10 @@
// var ctxPath = getContextPath();
var ctxPath = "http://192.168.0.38:18080/czl";
var pagesPath = getContextPath();
// function getContextPath() {
// var pathName = document.location.pathname;
// var index = pathName.substr(1).indexOf("/");
// var result = pathName.substr(0, index + 1);
// return result;
// }
function getContextPath() {
var pathName = document.location.pathname;
var index = pathName.substr(1).indexOf("/");
var result = pathName.substr(0, index + 1);
return result;
}

View File

@ -135,7 +135,8 @@
url: ctxPath + '/users/current?token=' + token,
success: function (data) {
localStorage.setItem("userId", data.id);
location.href = ctxPath + '/index.html';
// location.href = ctxPath + '/index.html';
location.href = pagesPath + '/index.html';
},
error: function (xhr, textStatus, errorThrown) {
var msg = xhr.responseText;
@ -156,7 +157,7 @@
//请求方式
type: "GET",
//请求的媒体类型
contentType: "application/json;charset=UTF-8",
// contentType: "application/json;charset=UTF-8",
//请求地址
url: url,
//请求成功
@ -216,12 +217,12 @@
time: 3000,
area: ['350px', '70px']
}, function () {
// location.href = ctxPath + '/index.html';
location.href = '/index.html';
location.href = pagesPath + '/index.html';
// location.href = 'http://127.0.0.1:5502/index.html';
});
} else {
// location.href = ctxPath + '/index.html';
location.href = '/index.html';
location.href = pagesPath + '/index.html';
// location.href = 'http://127.0.0.1:5502/index.html';
}
},
error: function (xhr, textStatus, errorThrown) {

View File

@ -1,80 +1,80 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" media="screen" href="../../css/font-awesome/css/font-awesome.css">
<meta charset="UTF-8">
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" media="screen" href="../../css/font-awesome/css/font-awesome.css">
</head>
<body>
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<form class="form-horizontal" onsubmit="return false" id="form">
<fieldset>
<div class="form-group">
<label class="col-md-2 control-label">上级菜单</label>
<div class="col-md-10">
<select id="parentId" name="parentId" class="form-control input-sm"></select>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">名称</label>
<div class="col-md-10">
<input class="form-control" placeholder="名称" type="text" name="name" id="name"
data-bv-notempty="true"
data-bv-notempty-message="名称 不能为空">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">样式</label>
<div class="col-md-10">
<button onclick="selectCss()" class="btn btn-primary">选择</button>
<input type="hidden" name="css" id="css" /><i id="cssImg" class="fa"></i>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">链接</label>
<div class="col-md-10">
<input class="form-control" placeholder="链接" name="href" id="href"/>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">类型</label>
<div class="col-md-10">
<select name="type" class="form-control input-sm">
<option value="1">菜单</option>
<option value="2">按钮</option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">权限</label>
<div class="col-md-10">
<input class="form-control" placeholder="权限" name="permission" id="permission" />
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">排序</label>
<div class="col-md-10">
<input class="form-control" placeholder="排序" name="sort" id="sort" type="number" value="100"
data-bv-notempty="true"
data-bv-notempty-message="排序 不能为空">
</div>
</div>
<div class="form-actions">
<div class="row" align="center">
<div class="col-md-12">
<button class="btn btn-primary" onclick="location.href='menuList.html'">返回</button>
<button class="btn btn-primary" type="submit" onclick="add()">
<i class="fa fa-save"></i> 保存
</button>
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<form class="form-horizontal" onsubmit="return false" id="form">
<fieldset>
<div class="form-group">
<label class="col-md-2 control-label">上级菜单</label>
<div class="col-md-10">
<select id="parentId" name="parentId" class="form-control input-sm"></select>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">名称</label>
<div class="col-md-10">
<input class="form-control" placeholder="名称" type="text" name="name" id="name"
data-bv-notempty="true" data-bv-notempty-message="名称 不能为空">
</div>
</div>
</div>
</fieldset>
</form>
</div>
<div class="form-group">
<label class="col-md-2 control-label">样式</label>
<div class="col-md-10">
<button onclick="selectCss()" class="btn btn-primary">选择</button>
<input type="hidden" name="css" id="css" /><i id="cssImg" class="fa"></i>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">链接</label>
<div class="col-md-10">
<input class="form-control" placeholder="链接" name="href" id="href" />
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">类型</label>
<div class="col-md-10">
<select name="type" class="form-control input-sm">
<option value="1">菜单</option>
<option value="2">按钮</option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">权限</label>
<div class="col-md-10">
<input class="form-control" placeholder="权限" name="permission" id="permission" />
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">排序</label>
<div class="col-md-10">
<input class="form-control" placeholder="排序" name="sort" id="sort" type="number" value="100"
data-bv-notempty="true" data-bv-notempty-message="排序 不能为空">
</div>
</div>
<div class="form-actions">
<div class="row" align="center">
<div class="col-md-12">
<button class="btn btn-primary" onclick="location.href='menuList.html'">返回</button>
<button class="btn btn-primary" type="submit" onclick="add()">
<i class="fa fa-save"></i> 保存
</button>
</div>
</div>
</div>
</fieldset>
</form>
</div>
<script type="text/javascript" src="../../js/jquery/jquery-3.6.0.js"></script>
<script type="text/javascript" src="../../js/jq.js"></script>
@ -84,46 +84,48 @@
<script type="text/javascript" src="../../layui/layui.js"></script>
<script type="text/javascript" src="../../js/publicJs.js"></script>
<script type="text/javascript">
layui.use('layer', function(){
var layer = layui.layer;
layui.use('layer', function () {
var layer = layui.layer;
});
initParentMenuSelect();
function add() {
$('#form').bootstrapValidator();
var bootstrapValidator = $("#form").data('bootstrapValidator');
bootstrapValidator.validate();
if(!bootstrapValidator.isValid()){
return;
}
var formdata = $("#form").serializeObject();
if (!bootstrapValidator.isValid()) {
return;
}
var formdata = $("#form").serializeObject();
$.ajax({
type : 'post',
url : ctxPath + '/permissions',
contentType: "application/json; charset=utf-8",
data : JSON.stringify(formdata),
success : function(data) {
layer.msg("添加成功", {shift: -1, time: 1000}, function(){
location.href = ctxPath + "/pages/menu/menuList.html";
});
type: 'post',
url: ctxPath + '/permissions',
contentType: "application/json; charset=utf-8",
data: JSON.stringify(formdata),
success: function (data) {
layer.msg("添加成功", { shift: -1, time: 1000 }, function () {
// location.href = ctxPath + "/pages/menu/menuList.html";
location.href = pagesPath + "/pages/menu/menuList.html";
});
}
});
}
function selectCss(){
function selectCss() {
layer.open({
type: 2,
title: "样式",
area: ['800px', '400px'],
maxmin: true,
shadeClose: true,
content: ['icon.html']
});
type: 2,
title: "样式",
area: ['800px', '400px'],
maxmin: true,
shadeClose: true,
content: ['icon.html']
});
}
</script>
</body>
</html>

View File

@ -1,81 +1,81 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" media="screen" href="../../css/font-awesome/css/font-awesome.css">
<meta charset="UTF-8">
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" media="screen" href="../../css/font-awesome/css/font-awesome.css">
</head>
<body>
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<form class="form-horizontal" onsubmit="return false" id="form">
<fieldset>
<input type="hidden" id="id" name="id">
<div class="form-group">
<label class="col-md-2 control-label">上级菜单</label>
<div class="col-md-10">
<select id="parentId" name="parentId" class="form-control input-sm"></select>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">名称</label>
<div class="col-md-10">
<input class="form-control" placeholder="名称" type="text" name="name" id="name"
data-bv-notempty="true"
data-bv-notempty-message="名称 不能为空">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">样式</label>
<div class="col-md-10">
<button onclick="selectCss()" class="btn btn-primary">选择</button>
<input type="hidden" name="css" id="css" /><i id="cssImg" class="fa"></i>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">链接</label>
<div class="col-md-10">
<input class="form-control" placeholder="链接" name="href" id="href"/>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">类型</label>
<div class="col-md-10">
<select name="type" class="form-control input-sm" id="type">
<option value="1">菜单</option>
<option value="2">按钮</option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">权限</label>
<div class="col-md-10">
<input class="form-control" placeholder="权限" name="permission" id="permission" />
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">排序</label>
<div class="col-md-10">
<input class="form-control" placeholder="排序" name="sort" id="sort" type="number"
data-bv-notempty="true"
data-bv-notempty-message="排序 不能为空">
</div>
</div>
<div class="form-actions">
<div class="row" align="center">
<div class="col-md-12">
<button class="btn btn-primary" onclick="location.href='menuList.html'">返回</button>
<button class="btn btn-primary" type="submit" onclick="update()">
<i class="fa fa-save"></i> 保存
</button>
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<form class="form-horizontal" onsubmit="return false" id="form">
<fieldset>
<input type="hidden" id="id" name="id">
<div class="form-group">
<label class="col-md-2 control-label">上级菜单</label>
<div class="col-md-10">
<select id="parentId" name="parentId" class="form-control input-sm"></select>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">名称</label>
<div class="col-md-10">
<input class="form-control" placeholder="名称" type="text" name="name" id="name"
data-bv-notempty="true" data-bv-notempty-message="名称 不能为空">
</div>
</div>
</div>
</fieldset>
</form>
</div>
<div class="form-group">
<label class="col-md-2 control-label">样式</label>
<div class="col-md-10">
<button onclick="selectCss()" class="btn btn-primary">选择</button>
<input type="hidden" name="css" id="css" /><i id="cssImg" class="fa"></i>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">链接</label>
<div class="col-md-10">
<input class="form-control" placeholder="链接" name="href" id="href" />
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">类型</label>
<div class="col-md-10">
<select name="type" class="form-control input-sm" id="type">
<option value="1">菜单</option>
<option value="2">按钮</option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">权限</label>
<div class="col-md-10">
<input class="form-control" placeholder="权限" name="permission" id="permission" />
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">排序</label>
<div class="col-md-10">
<input class="form-control" placeholder="排序" name="sort" id="sort" type="number"
data-bv-notempty="true" data-bv-notempty-message="排序 不能为空">
</div>
</div>
<div class="form-actions">
<div class="row" align="center">
<div class="col-md-12">
<button class="btn btn-primary" onclick="location.href='menuList.html'">返回</button>
<button class="btn btn-primary" type="submit" onclick="update()">
<i class="fa fa-save"></i> 保存
</button>
</div>
</div>
</div>
</fieldset>
</form>
</div>
<script type="text/javascript" src="../../js/jquery/jquery-3.6.0.js"></script>
<script type="text/javascript" src="../../js/jq.js"></script>
@ -85,80 +85,82 @@
<script type="text/javascript" src="../../layui/layui.js"></script>
<script type="text/javascript" src="../../js/publicJs.js"></script>
<script type="text/javascript">
layui.use('layer', function(){
var layer = layui.layer;
});
initParentMenuSelect();
var id = getUrlParam("id");
initData();
function initData(){
if(id != ""){
$.ajax({
type : 'get',
url : ctxPath + '/permissions/'+id,
async : false,
success : function(data) {
$("#id").val(data.id);
$("#parentId").val(data.parentId);
$("#name").val(data.name);
var css = data.css;
$("#css").val(css);
$("#href").val(data.href);
$("#type").val(data.type);
$("#permission").val(data.permission);
$("#sort").val(data.sort);
if(css != ""){
$("#cssImg").addClass("fa");
$("#cssImg").addClass(css);
layui.use('layer', function () {
var layer = layui.layer;
});
initParentMenuSelect();
var id = getUrlParam("id");
initData();
function initData() {
if (id != "") {
$.ajax({
type: 'get',
url: ctxPath + '/permissions/' + id,
async: false,
success: function (data) {
$("#id").val(data.id);
$("#parentId").val(data.parentId);
$("#name").val(data.name);
var css = data.css;
$("#css").val(css);
$("#href").val(data.href);
$("#type").val(data.type);
$("#permission").val(data.permission);
$("#sort").val(data.sort);
if (css != "") {
$("#cssImg").addClass("fa");
$("#cssImg").addClass(css);
}
}
}
});
}
}
function selectCss(){
layer.open({
type: 2,
title: "样式",
area: ['800px', '400px'],
maxmin: true,
shadeClose: true,
content: ['icon.html']
});
}
function update() {
if($("#parentId").val() == id){
layer.msg("父级菜单不能是自己");
return;
});
}
}
function selectCss() {
layer.open({
type: 2,
title: "样式",
area: ['800px', '400px'],
maxmin: true,
shadeClose: true,
content: ['icon.html']
});
}
function update() {
if ($("#parentId").val() == id) {
layer.msg("父级菜单不能是自己");
return;
}
$('#form').bootstrapValidator();
var bootstrapValidator = $("#form").data('bootstrapValidator');
bootstrapValidator.validate();
if(!bootstrapValidator.isValid()){
return;
}
var formdata = $("#form").serializeObject();
if (!bootstrapValidator.isValid()) {
return;
}
var formdata = $("#form").serializeObject();
$.ajax({
type : 'put',
url : ctxPath + '/permissions/',
contentType: "application/json; charset=utf-8",
data : JSON.stringify(formdata),
success : function(data) {
layer.msg("修改成功", {shift: -1, time: 1000}, function(){
location.href = ctxPath + "/pages/menu/menuList.html";
});
type: 'put',
url: ctxPath + '/permissions/',
contentType: "application/json; charset=utf-8",
data: JSON.stringify(formdata),
success: function (data) {
layer.msg("修改成功", { shift: -1, time: 1000 }, function () {
// location.href = ctxPath + "/pages/menu/menuList.html";
location.href = pagesPath + "/pages/menu/menuList.html";
});
}
});
}
</script>
</body>
</html>

View File

@ -1,88 +1,88 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" media="screen" href="../../layui/css/layui.css">
<meta charset="UTF-8">
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" media="screen" href="../../layui/css/layui.css">
</head>
<body>
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<form class="form-horizontal" onsubmit="return false" id="form">
<fieldset>
<div class="form-group">
<label class="col-md-2 control-label">用户名</label>
<div class="col-md-10">
<input class="form-control" placeholder="用户名" type="text" name="username"
data-bv-notempty="true"
data-bv-notempty-message="用户名 不能为空">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">密码</label>
<div class="col-md-10">
<input class="form-control" placeholder="密码" type="text" value="88888888" name="password"
data-bv-notempty="true"
data-bv-notempty-message="密码 不能为空">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">昵称</label>
<div class="col-md-10">
<input class="form-control" placeholder="昵称" type="text" name="nickname">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">手机号</label>
<div class="col-md-10">
<input class="form-control" placeholder="手机号" type="text" maxlength="11" name="phone">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">电话</label>
<div class="col-md-10">
<input class="form-control" placeholder="电话" type="text" maxlength="20" name="telephone">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">邮箱</label>
<div class="col-md-10">
<input class="form-control" placeholder="邮箱" type="text" maxlength="50" name="email">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">生日</label>
<div class="col-xs-2">
<input type="text" class="form-control" placeholder="生日" id="birthday" name='birthday'>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">性别</label>
<div class="col-md-10" style="width: 100px">
<select class="form-control input-sm" name="sex" id="sex">
</select>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">角色</label>
<div class="checkbox" id="roles">
</div>
</div>
<div class="form-actions">
<div class="row" align="center">
<div class="col-md-12">
<button class="btn btn-primary" onclick="location.href='userList.html'">返回</button>
<button class="btn btn-primary" type="submit" onclick="add()">
<i class="fa fa-save"></i> 保存
</button>
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<form class="form-horizontal" onsubmit="return false" id="form">
<fieldset>
<div class="form-group">
<label class="col-md-2 control-label">用户名</label>
<div class="col-md-10">
<input class="form-control" placeholder="用户名" type="text" name="username"
data-bv-notempty="true" data-bv-notempty-message="用户名 不能为空">
</div>
</div>
</div>
</fieldset>
</form>
</div>
<div class="form-group">
<label class="col-md-2 control-label">密码</label>
<div class="col-md-10">
<input class="form-control" placeholder="密码" type="text" value="88888888" name="password"
data-bv-notempty="true" data-bv-notempty-message="密码 不能为空">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">昵称</label>
<div class="col-md-10">
<input class="form-control" placeholder="昵称" type="text" name="nickname">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">手机号</label>
<div class="col-md-10">
<input class="form-control" placeholder="手机号" type="text" maxlength="11" name="phone">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">电话</label>
<div class="col-md-10">
<input class="form-control" placeholder="电话" type="text" maxlength="20" name="telephone">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">邮箱</label>
<div class="col-md-10">
<input class="form-control" placeholder="邮箱" type="text" maxlength="50" name="email">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">生日</label>
<div class="col-xs-2">
<input type="text" class="form-control" placeholder="生日" id="birthday" name='birthday'>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">性别</label>
<div class="col-md-10" style="width: 100px">
<select class="form-control input-sm" name="sex" id="sex">
</select>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">角色</label>
<div class="checkbox" id="roles">
</div>
</div>
<div class="form-actions">
<div class="row" align="center">
<div class="col-md-12">
<button class="btn btn-primary" onclick="location.href='userList.html'">返回</button>
<button class="btn btn-primary" type="submit" onclick="add()">
<i class="fa fa-save"></i> 保存
</button>
</div>
</div>
</div>
</fieldset>
</form>
</div>
<script type="text/javascript" src="../../js/publicJs.js"></script>
<script type="text/javascript" src="../../js/jquery/jquery-3.6.0.js"></script>
<script type="text/javascript" src="../../js/jq.js"></script>
@ -92,42 +92,44 @@
<script type="text/javascript" src="../../layui/layui.js"></script>
<script type="text/javascript" src="../../js/dict.js"></script>
<script type="text/javascript">
layui.use(['layer','laydate'], function(){
var layer = layui.layer;
var laydate = layui.laydate;
laydate.render({
elem: '#birthday'
});
layui.use(['layer', 'laydate'], function () {
var layer = layui.layer;
var laydate = layui.laydate;
laydate.render({
elem: '#birthday'
});
});
showDictSelect("sex", "sex");
initRoles();
$('#form').bootstrapValidator();
function add() {
var bootstrapValidator = $("#form").data('bootstrapValidator');
bootstrapValidator.validate();
if(!bootstrapValidator.isValid()){
return;
}
var formdata = $("#form").serializeObject();
formdata.roleIds = getCheckedRoleIds();
if (!bootstrapValidator.isValid()) {
return;
}
var formdata = $("#form").serializeObject();
formdata.roleIds = getCheckedRoleIds();
$.ajax({
type : 'post',
url : ctxPath + '/users',
contentType: "application/json; charset=utf-8",
data : JSON.stringify(formdata),
success : function(data) {
layer.msg("添加成功", {shift: -1, time: 1000}, function(){
location.href = ctxPath + "/pages/user/userList.html";
});
type: 'post',
url: ctxPath + '/users',
contentType: "application/json; charset=utf-8",
data: JSON.stringify(formdata),
success: function (data) {
layer.msg("添加成功", { shift: -1, time: 1000 }, function () {
// location.href = ctxPath + "/pages/user/userList.html";
location.href = pagesPath + "/pages/user/userList.html";
});
}
});
}
</script>
</body>
</html>

View File

@ -1,85 +1,90 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" media="screen" href="../../layui/css/layui.css">
</head>
<body>
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<form class="form-horizontal" onsubmit="return false" id="form">
<fieldset>
<input type="hidden" id="id" name="id">
<div class="form-group">
<label class="col-md-2 control-label">用户名</label>
<div class="col-md-10">
<input class="form-control" placeholder="用户名" type="text" name="username" id="username" readonly="readonly">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">昵称</label>
<div class="col-md-10">
<input class="form-control" placeholder="昵称" type="text" name="nickname" id="nickname">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">手机号</label>
<div class="col-md-10">
<input class="form-control" placeholder="手机号" type="text" maxlength="11" name="phone" id="phone">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">电话</label>
<div class="col-md-10">
<input class="form-control" placeholder="电话" type="text" maxlength="20" name="telephone" id="telephone">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">邮箱</label>
<div class="col-md-10">
<input class="form-control" placeholder="邮箱" type="text" maxlength="50" name="email" id="email">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">生日</label>
<div class="col-xs-2">
<input type="text" class="form-control" placeholder="生日" id="birthday" name='birthday'>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">性别</label>
<div class="col-md-10" style="width: 100px">
<select class="form-control input-sm" name="sex" id="sex">
</select>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">状态</label>
<div class="col-md-10" style="width: 100px">
<select class="form-control input-sm" name="status" id="status">
</select>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">角色</label>
<div class="checkbox" id="roles">
</div>
</div>
<div class="form-actions">
<div class="row" align="center">
<div class="col-md-12">
<button class="btn btn-primary" onclick="location.href='userList.html'">返回</button>
<button class="btn btn-primary" type="submit" onclick="update()">
<i class="fa fa-save"></i> 保存
</button>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" media="screen" href="../../layui/css/layui.css">
</head>
<body>
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<form class="form-horizontal" onsubmit="return false" id="form">
<fieldset>
<input type="hidden" id="id" name="id">
<div class="form-group">
<label class="col-md-2 control-label">用户名</label>
<div class="col-md-10">
<input class="form-control" placeholder="用户名" type="text" name="username" id="username"
readonly="readonly">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">昵称</label>
<div class="col-md-10">
<input class="form-control" placeholder="昵称" type="text" name="nickname" id="nickname">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">手机号</label>
<div class="col-md-10">
<input class="form-control" placeholder="手机号" type="text" maxlength="11" name="phone"
id="phone">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">电话</label>
<div class="col-md-10">
<input class="form-control" placeholder="电话" type="text" maxlength="20" name="telephone"
id="telephone">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">邮箱</label>
<div class="col-md-10">
<input class="form-control" placeholder="邮箱" type="text" maxlength="50" name="email" id="email">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">生日</label>
<div class="col-xs-2">
<input type="text" class="form-control" placeholder="生日" id="birthday" name='birthday'>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">性别</label>
<div class="col-md-10" style="width: 100px">
<select class="form-control input-sm" name="sex" id="sex">
</select>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">状态</label>
<div class="col-md-10" style="width: 100px">
<select class="form-control input-sm" name="status" id="status">
</select>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">角色</label>
<div class="checkbox" id="roles">
</div>
</div>
</div>
</fieldset>
</form>
</div>
<div class="form-actions">
<div class="row" align="center">
<div class="col-md-12">
<button class="btn btn-primary" onclick="location.href='userList.html'">返回</button>
<button class="btn btn-primary" type="submit" onclick="update()">
<i class="fa fa-save"></i> 保存
</button>
</div>
</div>
</div>
</fieldset>
</form>
</div>
<script type="text/javascript" src="../../js/jquery/jquery-3.6.0.js"></script>
<script type="text/javascript" src="../../js/jq.js"></script>
<script type="text/javascript" src="../../js/plugin/bootstrapvalidator/bootstrapValidator.min.js"></script>
@ -87,72 +92,74 @@
<script type="text/javascript" src="../../js/my/roles/role.js"></script>
<script type="text/javascript" src="../../layui/layui.js"></script>
<script type="text/javascript" src="../../js/dict.js"></script>
<script type="text/javascript" src="../../js/publicJs.js"></script>
<script type="text/javascript" src="../../js/publicJs.js"></script>
<script type="text/javascript">
layui.use(['layer','laydate'], function(){
var layer = layui.layer;
var laydate = layui.laydate;
laydate.render({
elem: '#birthday'
});
});
showDictSelect("sex", "sex");
showDictSelect("status", "userStatus");
initRoles();
initData();
function initData(){
var id = getUrlParam("id");
if(id != ""){
$.ajax({
type : 'get',
url : ctxPath + '/users/'+id,
async : false,
success : function(data) {
$("#id").val(data.id);
$("#username").val(data.username);
$("#nickname").val(data.nickname);
$("#phone").val(data.phone);
$("#telephone").val(data.telephone);
$("#email").val(data.email);
$("#birthday").val(data.birthday);
$("#sex").val(data.sex);
$("#status").val(data.status);
}
layui.use(['layer', 'laydate'], function () {
var layer = layui.layer;
var laydate = layui.laydate;
laydate.render({
elem: '#birthday'
});
initRoleDatas(id);
});
showDictSelect("sex", "sex");
showDictSelect("status", "userStatus");
initRoles();
initData();
function initData() {
var id = getUrlParam("id");
if (id != "") {
$.ajax({
type: 'get',
url: ctxPath + '/users/' + id,
async: false,
success: function (data) {
$("#id").val(data.id);
$("#username").val(data.username);
$("#nickname").val(data.nickname);
$("#phone").val(data.phone);
$("#telephone").val(data.telephone);
$("#email").val(data.email);
$("#birthday").val(data.birthday);
$("#sex").val(data.sex);
$("#status").val(data.status);
}
});
initRoleDatas(id);
}
}
}
$('#form').bootstrapValidator();
function update() {
var bootstrapValidator = $("#form").data('bootstrapValidator');
bootstrapValidator.validate();
if(!bootstrapValidator.isValid()){
return;
}
var formdata = $("#form").serializeObject();
formdata.roleIds = getCheckedRoleIds();
if (!bootstrapValidator.isValid()) {
return;
}
var formdata = $("#form").serializeObject();
formdata.roleIds = getCheckedRoleIds();
$.ajax({
type : 'put',
url : ctxPath + '/users',
contentType: "application/json; charset=utf-8",
data : JSON.stringify(formdata),
success : function(data) {
layer.msg("修改成功", {shift: -1, time: 1000}, function(){
location.href = ctxPath + "/pages/user/userList.html";
});
type: 'put',
url: ctxPath + '/users',
contentType: "application/json; charset=utf-8",
data: JSON.stringify(formdata),
success: function (data) {
layer.msg("修改成功", { shift: -1, time: 1000 }, function () {
// location.href = ctxPath + "/pages/user/userList.html";
location.href = pagesPath + "/pages/user/userList.html";
});
}
});
}
</script>
</body>
</html>