gz_car_ui/js/car_basic/supplier_list.js

220 lines
6.9 KiB
JavaScript

let form, table, laydate;
let tableIns;
let pageNum = 1; // 定义分页
layui.use(["form", "table"], function () {
form = layui.form;
table = layui.table;
initTable();
});
// 查询/重置
function queryTable(type) {
if (type === 1) {
let name = $('#name').val();
let flag = checkValue(name);
if (flag) {
$('#name').val('');
return layer.msg('供应商查询包含特殊字符,请重新输入', { icon: 2 });
}
reloadTable(1);
} else if (type === 2) {
$('#name').val('');
layui.form.render();
reloadTable(1);
}
}
// 刷新页面数据
function reloadData() {
reloadTable(1);
}
// 重载表格
function reloadTable(pageNum) {
table.reload("currentTableId", {
page: {
curr: pageNum ? pageNum : 1,
},
where: {
encryptedData: JSON.stringify({
'name': $('#name').val(),
}),
},
},
);
}
// 初始化表格
function initTable() {
tableIns = table.render({
elem: "#currentTableId",
id: 'currentTableId',
headers: {
authorization: sessionStorage.getItem("gz-token"),
},
height: "full-170",
url: dataUrl + "backstage/carSup/getCarSupPageList",
where: {
encryptedData: JSON.stringify({
'name': $('#name').val(),
}),
},
request: {
pageName: 'pageNum',
limitName: 'pageSize'
},
parseData: function (res) { // res 即为原始返回的数据
if(res.code === 401){
closeWindowOpen();
}
return {
"code": 0, // 解析接口状态
"msg": '获取成功', // 解析提示文本
"count": res.total, // 解析数据长度
"data": res.list // 解析数据列表
};
},
cols: [
[
{
width: '9.9%',
title: "序号",
align: "center",
templet: function (d) {
return d.LAY_NUM;
},
},
{
field: "name",
width: '15%',
title: "供应商名称",
unresize: true,
align: "center",
sort:true,
},
{
field: "link",
width: '10%',
title: "联系人",
unresize: true,
align: "center",
sort:true,
},
{
field: "phone",
width: '10%',
title: "联系方式",
unresize: true,
align: "center",
sort:true,
},
{
field: "expStatus",
width: '10%',
title: "供应商状态",
unresize: true,
sort:true,
align: "center",
templet: function (d) {
if (d.isActive === '1') {
return "<span style='color:#19BE6B;margin:0 5px 0 5px;font-size:14px'>●</span>" + "生效中";
} else if (d.isActive === '0') {
return "<span style='color:#F56C6C;margin:0 5px 0 5px;font-size:14px'>●</span>" + "已失效";
} else {
return '';
}
}
},
{
field: "userNames",
width: '30%',
title: "供应商用户",
unresize: true,
sort:true,
align: "center",
templet: function (d) {
let html = "";
html += "<span>"+setNullValue(d.userNames)+"</span>"
html += "<a onclick='bandUser(" + JSON.stringify(d) + ",3)'> 绑定用户>> </a>";
return html;
}
},
{
title: "操作",
width: '15%',
align: "center",
unresize: true,
sort:true,
templet: function (d) {
let html = "";
html += "<a onclick='addOrUpdateSupplier(" + JSON.stringify(d) + ",3)'>详情</a>";
html += "<div class='splitLine'>|</div><a onclick='addOrUpdateSupplier(" + JSON.stringify(d) + ",2)'>修改</a>";
html += "<div class='splitLine'>|</div><a style='color:#f56c6c;' onclick='delData(" + JSON.stringify(d) + ")'>删除</a>";
return html;
},
},
],
],
limits: [10, 15, 20, 25, 50, 100],
limit: 10,
page: true,
done: function (res, curr, count) {
pageNum = tableIns.config.page.curr;
table.resize("currentTableId");
},
});
}
// 导出
function exportExcel() {
let params = {
'name': $('#name').val(),
}
let url = dataUrl + "backstage/carSup/export";
exportExcelUtil(url, '供应商', JSON.stringify(params));
}
// 新增/修改/详情
function addOrUpdateSupplier(obj, type) {
let title = '';
if (type === 1) {
title = '新增';
} else if (type === 2) {
title = '修改';
} else if (type === 3) {
title = '详情';
}
obj.type = type;
openIframeByParamObj("addOrUpdateSupplier", title, "./child/supplier_form.html", "50%", "60%", obj);
}
// 绑定供应商用户
function bandUser(obj) {
let title = '选择供应商用户';
openIframeByParamObj("bandUser", title, "./child/supplier_band_user_form.html", "62%", "92%", obj);
}
// 删除供应商
function delData(data) {
layer.confirm("确定删除此条数据吗?", { 'title': '操作提示', move: false }, function () {
let loadingMsg = layer.msg('数据删除中,请稍候...', { icon: 16, scrollbar: false, time: 0 });
let url = dataUrl + "backstage/carSup/deleteCarSup"
let obj = { 'id': data.id }
let params = {
encryptedData: JSON.stringify(obj)
}
ajaxRequest(url, "POST", params, true, function () {
}, function (result) {
layer.close(loadingMsg); // 关闭提示层
if (result.code === 200) {
layer.msg(result.msg, { icon: 1 })
queryTable(1);
} else {
layer.msg(result.msg, { icon: 2 })
}
}, function (xhr) {
layer.close(loadingMsg); // 关闭提示层
error(xhr)
});
})
}